`
qihuitoday
  • 浏览: 11662 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

<base target > 标签用法 及showModalDialog 问题 .

阅读更多

 

HTML <base> 标签

定义和用法

target 属性规定在何处打开页面上的所有链接。

实例

为页面上所有链接规定默认目标:

<head>

<base target="_blank" />

</head>

 

<body>

<a href="http://www.w3school.com.cn">W3School</a>

</body>

TIY

语法

<base target="value">

属性值

描述

_blank

在新窗口中打开被链接文档。

_self

默认。在相同的框架中打开被链接文档。

_parent

在父框架集中打开被链接文档。

_top

在整个窗口中打开被链接文档。

framename

在指定的框架中打开被链接文档。

 

详解

在网页中,经常碰到这种情况:点击某些链接,就会弹出新窗口,原来的页面部改变,而有些链接,就在原窗口上打开新的链接,原窗口没有了,被覆盖了。这个是为什么呢?怎么实现的呢?

         target=_blank,这个标签,就是解决这个问题的。<base target=_blank>是将基本链接的目标框架都改为新页打开,即弹出新窗口。<a>、<form>等很多标签都支持target="black"的属性,可以在这样的标签里单独做设置,比如:

<a href="xxx.htm" target="_blank">超链接内容</a>

<form action="xxx.htm" target="_blank">表达内容<input type="submit" value="提交按钮"></form>

如果不加这一句,默认均为本页刷新,即target="_self"。还有两个这样的标签,<target=_top>表示在整页窗口打开,<target=_parent>表示在父窗口打开。

<a href="http://www.bookboy.cn/"   target="_blank">单独定义,新窗口打开</a>

<a href="http://www.bookboy.cn/"   target="_self">单独定义,相同窗口打开</a>

<a href="http://www.bookboy.cn/"   target="_top">单独定义,整页窗口打开</a>

<a href="http://www.bookboy.cn/"   target="_parent">单独定义,父窗口打开</a>

     另外,这只是单独设置,如果有在某个页面上有很多的链接或者form表单,逐一的添加标签会很麻烦,有没有类似批处理的呢?

   这就要用到<base target=_xxx>   ,这是基本的HTML语言。用<base target=_××>来设置这个网页所有链接的目标窗口。也就是说,网页中只要添加<base target=_××>这句,那么所有的超链接就无须单独设置。最好将这句写在<head>和</head>之间。例如

<base target=_blank>表示网页中所有的超链接的目标地址都在新建窗口中打开。

<base target=_self>表示网页中所有的超链接的目标地址都在原窗口上打开。

       当然,这样的标签有时也会碰到麻烦。

1   不符合标准 

      当我们使用W3C过渡型标准时,即DOCTYPE(xh tml1-transitional. dtd),没有问题,但是使用严格的标准时,即DOCTYPE(xhtml1-strict.dtd),就会出错,错误提示:

"there is no attributetargetfor this element(in this HTML version)"

         原因是,外国人认为,不经过用户同意,就随便打开新窗口,是不礼貌的,不尊重用户的,可参看   http://bbs.chinahtml.com/showthread.php?t=53657

     那碰到这种情况时怎么办呢?

       HTML4.0增加了一个新属性:rel,这个属性用来说明链接和包含此链接页面的关系,以及链接打开的目标。rel有许多的属性值,比如next、previous,、chapter、section等等。我们要使用的就是rel="externa l"属性。原来这样写的代码:

 

<a href="document.html" target="_blank">打开一个新窗口</a>现在要写成这样:<a href="document.html" rel="external">打开一个 新窗口</a>这是符合strict标准的方法。当然还必须配合一个javascript才有效。javascript完整的代码JS如下:function externallinks() {if (!document.getElementsByTagName) return;var anchors = document.getElementsByTagName("a");for (var i=0; i<anchors.length; i++) {    var anchor = anchors[i];   if (anchor.getAttribute("href") &&        anchor.getAttribute("rel") == "external")      anchor.target = "_blank";}}window.onload = externallinks;你可以把它保存成一个.js文件(比如external.js),然后通过外部联接方法调用:<script type="text/javascript" src="external.js"></script>就是这样。

2    浏览器不支持    有时,使用了上述标签,但是,任旧不见效果,比如使用了target=_blank,却不能弹出窗口,这是因为,有些浏览器被用户设置了,不让弹出窗口,当然这样设置是为了屏蔽广告,因此,这是就无法打开新窗口,知道了原因,解决就很简单了,在浏览器中设置一下就可以了。

3 衡水人才网03188.net首页<base target="_blank" />不起作用了,将它提前,放到了<title>下边,js前边就正常了,原来加载js是会影响到一些代码。

总结一下:在head中,js放最后。

常见问题

在 showModalDialog的模式窗口时 需要配合  <base target="_self" />使用 否则会弹出一个新窗口

文章出自:http://blog.csdn.net/tianzhichengzhr/article/details/6801325

分享到:
评论

相关推荐

    JS中showModalDialog 详细使用.txt

    1. **刷新问题**:如果在打开的对话框中使用 `&lt;base target="_self"&gt;`,这将导致对话框刷新时出现问题。为了防止这种情况,可以使用 JavaScript 监听 F5 键,并模拟点击隐藏的链接来进行刷新。 2. **兼容性**:由于 ...

    showmodaldialog的用法收集

    要防止`showModalDialog`或`showModelessDialog`弹出新窗口,可以在被打开的HTML文档中添加`&lt;base target="_self"&gt;`标签。这将确保所有链接都在当前窗口中打开,而不是新窗口。 ### 三、刷新`showModalDialog`和`...

    C#跳转网页7种方法

    若希望这两个方法的链接不在新窗口中打开,可以在被打开的网页中添加`&lt;base target="_self"&gt;`标签。 总结来说,选择哪种跳转方法取决于具体需求,如是否需要保留原始页面、是否在同一服务器内、是否需要用户交互等...

    lotus_web开发注意问题

    &lt;base target="_self"&gt; &lt;/head&gt; ``` 这样处理后,所有带有 `target="_self"` 的链接都将按照预期在当前窗口中打开。 #### 三、`iframe` 对象与子页面对象的区别 在处理 `iframe` 时,开发者可能会遇到两种不同的...

    ASPNET跳转网页7种方法

    ASP.NET 是一种强大的 web 应用程序开发框架,它提供了...在使用 `showModalDialog` 或 `showModelessDialog` 时,如果不想弹出新窗口,可以在被打开的网页中添加 `&lt;base target="_self"&gt;`,确保链接在当前窗口内打开。

    showModalDialog和showModelessDialog的用法

    &lt;base target="_self"&gt; ``` 此代码应放置在 `&lt;head&gt;` 标签内,通常位于 `&lt;html&gt;` 和 `&lt;body&gt;` 之间。这样设置之后,所有的超链接都会在当前对话框中打开,而不是弹出新的窗口。 #### 三、刷新showModalDialog和...

    mvc常用的跳转

    这里使用的`&lt;base&gt;`标签是为了确保新打开的窗口中的链接默认会在当前窗口中打开,而不是新开一个窗口。此外,还可以使用以下方式刷新不同的上下文: - `window.location.reload()`:刷新当前窗口。 - `parent....

    关于jsp网页设计的模态和非模态窗口

    在页面的 &lt;body&gt;前加入&lt;base target="_self"&gt;可以防止在模态窗口中提交后新开一窗口。 调用父窗口的方法同时传递参数 可以使用 window.showModalDialog()方法传递参数,并调用父窗口的方法。 实践示例 可以使用...

    showModalDialog和showModelessDialog使用心得

    1. **刷新问题**:使用`showModalDialog`时,如果页面中有`&lt;base target="_self"&gt;`,直接刷新可能会导致意外的行为。可以通过监听键盘事件,阻止F5键的默认刷新行为,确保页面状态的一致性。 2. **返回数据**:从...

    用showModalDialog弹出页面后,提交表单总是弹出一个新窗口

    另一种解决方案是使用`&lt;base&gt;`标签来指定页面中所有链接和表单的默认目标。设置`&lt;base target="_self"&gt;`可以使表单提交在当前窗口(即模态对话框)中进行,而不是打开新的窗口。 ```html &lt;!-- 在弹出页面的&lt;head...

    JS中showModalDialog关闭子窗口刷新主窗口用法详解

    要在showModalDialog或showModelessDialog中打开的页面里的超链接不弹出新窗口,可以在&lt;head&gt;标签中添加&lt;basetarget="_self"&gt;属性。这样设置后,所有的链接默认在当前窗口打开,而不是新窗口。 三、在...

    js共享 js 问题

    &lt;basetarget="_self"&gt; &lt;/body&gt; ``` **知识点:** - **`&lt;base&gt;`标签**: 定义文档中所有相对URL的基本URL,常用于设置默认的链接目标。 **应用场景:** 当页面中存在多个框架时,可以通过`&lt;base target="_self"&gt;`...

    showModalDialog 和 showModelessDialog

    当使用`showModalDialog`或`showModelessDialog`打开的链接时,可以通过在被打开的网页中添加`&lt;base target="_self"&gt;`标签,确保内容在同一窗口内加载,而不是新开一个窗口。 3. **刷新对话框内容**: 在`...

    避免 showModalDialog 弹出新窗体的原因分析

    若希望在`showModalDialog`或`showModelessDialog`中打开的链接不弹出新窗口,只需在新窗口的HTML文档头部添加`&lt;base target="_self"&gt;`标签。这将确保所有链接在当前窗口内打开,而不是新开窗口。 三、刷新`...

    从弹出窗体取选择值 从弹出窗体取选择值

    需要注意的是,在弹出窗体的头部应该包含`&lt;base target="_self"/&gt;`标签,以确保返回的数据能够在同一个窗口中处理。 #### 总结 通过以上步骤,我们可以清晰地看到如何在ASP.NET应用程序中实现从弹出窗体获取选择值...

    javascript showModalDialog 内跳转页面的问题

    需要注意的是,在调用go_link方法时,为了确保链接在当前模态框内打开,应该确保模态框的HTML代码中包含属性`&lt;base target="_self" /&gt;`。这个base标签指定了页面中所有链接的默认目标,设置为_self表示链接在当前...

    C#网页跳转方法总结

    若要让链接在对话框内打开而不是新窗口,只需在目标页面的HTML头部添加 `&lt;base target="_self"&gt;`。 7. **大量参数传递** 如果需要在页面间传递大量参数,可以使用以下方法: - 将参数编码为URL查询字符串,如 `...

    javascript弹出窗口问题总结

    在HTML文档的`&lt;head&gt;`和`&lt;body&gt;`之间添加`&lt;base target="_self"&gt;`标签,可以设置所有链接都在当前窗口(或模式窗口)中打开,而不是新开窗口。 6. **无提示关闭页面的方法** 关闭页面时,如果希望不显示确认提示...

    Lotus Domino web开发注意问题

    要解决这个问题,可以在弹出页面的`&lt;head&gt;`中添加`&lt;base target="_self"&gt;`,这将确保所有链接和表单提交都在当前窗口中执行。 3. **iframe的访问**: `getElementById("myframe")`返回iframe标签对象,允许访问...

Global site tag (gtag.js) - Google Analytics