`

超链接的禁用属性Disabled

阅读更多
可以设置超链接的Disabled属性的true 和 false来确定超链接是不是能点击

例如:
<a herf='http://www.baidu.com' onclick='return click(this);' disabled='ture'>bai du</a>

上面的意思是不想让bai du的超链生效,但在click不做任何约束和判断的话,但点击bai du的时候自然就会跳转到百度页面,这就是html中超链接禁用属性的bug
可以添加下面js约束来判断超链接是否可以使用
    <script language='javascript'>
      function click(obj)
      {
        if(obj.disabled)
        {
            return false;
        }
        return ture;
      }
    </script>

下面的微软给出的bug解决方案:
借助了全局变量,使用别的按钮来改变disabled的属性,来得到禁用属性的效果.;

BUG: DISABLED 属性不在禁用超链接
尽管 DISABLED 属性设置为 True 一个超链接为在以下,
<a DISABLED="true" href="http://www.microsoft.com/">Where do you want to go today?</a>
用户仍可以单击超链接,然后 Internet Explorer 导航到所选页。

若要解决此问题,设置返回 true 或 false 根据当前的执行上下文的超链接的 onclick 事件。 在下面的代码将全局的 Microsoft JScript 变量的值设置为 true 或 false ,根据按钮单击中。 目标超链接对象的 DISABLED 属性被更新,以便它能够正确通信其禁用的状态,其他对象并编写脚本页上的功能。
<html>
<head>
<title>Workaround for DISABLED Attribute Problem</title>
<SCRIPT>
var canNav = false;
function canNavigate() {
return canNav;
}
function load() {
document.all("btn1").innerText = "Link status == " + canNav;
}

function setNavigate(linkObj, canNavParam) {
if (linkObj != null) {
if (canNavParam == false) {
linkObj.disabled = true;
} else {
linkObj.disabled = false;
}
canNav = canNavParam;
}
}

function updateBtnStatus(btnName) {
var btn = document.all(btnName);
if (btn != null) {
document.all(btnName).innerText = "Link status == " + canNav;
}
}
</SCRIPT>

</head>
<body onload="load();">
<a id="lnk1" disabled=true href="http://www.microsoft.com/" onclick="return canNavigate();">Click  here</a><p>
<button id=btn1 onclick="setNavigate(document.all('lnk1'), !(canNav));updateBtnStatus('btn1');">
</button>
</body>
</html>
参考文献:http://support.microsoft.com/kb/253579/zh-cn





分享到:
评论
1 楼 bdpaylm 2010-05-06  
两段代码都试过. 鼠标左键单击是顶住了...但是右键...

相关推荐

    超链接的禁用属性Disabled使用示例

    可以设置超链接的Disabled属性的true 和 false来确定超链接是不是能点击 例如: &lt;a herf='http://www.baidu.com' xss=removed disabled='ture'&gt;bai du 上面的意思是不想让bai du的超链生效,但在click不做任何约束...

    为超链接加上disabled后的故事

    开发者通过简单的JavaScript代码尝试使用`disabled`属性来禁用超链接,但后来发现这种方法并不奏效。具体实现为: ```javascript function reciverSms(obj){ var sms = getSmsCode(); obj.disabled = true; ...

    ASP.NET参考手册【w3c】【内带书签、文档内超链接】

    它具有多个属性,如Attributes(返回元素的所有属性名称和值对)、Disabled(指示是否禁用控件)、HRef(链接的URL)、id(控件的唯一标识符)、InnerHtml(设置或返回HTML元素内容)、OuterHtml(与InnerHtml类似,...

    safari HTML5 handbook

    - **disabled属性**:定义元素是否禁用。 - **enctype属性**:定义编码类型。 - **end属性**:定义结束时间。 - **face属性**:定义字体系列。 - **for属性**:定义关联的控件。 - **frame属性**:定义目标框架。 - ...

    BootStrap中按钮点击后被禁用按钮的最佳实现方法

    // 禁用超链接 $('a').addClass('disabled'); $('a').attr('disabled', 'disabled'); ``` 这里的`addClass('disabled')`用于添加Bootstrap的CSS类,使其视觉上看起来被禁用了。而`prop('disabled', true)`则是在...

    让网页上的超链接失效,不能点击的js代码

    现在,让我们看看一个更通用、更现代的JavaScript方法来实现超链接的禁用: ```javascript // 获取所有的超链接元素 var links = document.getElementsByTagName('a'); // 遍历所有超链接 for (var i = 0; i ; i++...

    Web前端开发笔试题.pdf

    - `.disabled`和`.setAttribute("disabled", "true")`用于禁用按钮,但前者直接修改属性,后者通过设置`disabled`属性值为`true`来禁用。 4. 页面结构和标记 - HTML文档的基本结构由`&lt;!doctype html&gt;`, `&lt;html&gt;`,...

    DOM参考手册.doc

    `Button`对象则对应HTML中的`&lt;button&gt;`标签,`disabled`属性可以启用或禁用按钮,`form`属性返回包含按钮的表单对象,`value`属性设置按钮上显示的文本。例如,`document.getElementById("myButton").disabled = ...

    攻击论文总结.docx

    行内块级元素的属性与前两者相似,但还包括type属性用于指定输入控件类型、value属性用于设定输入控件值,以及disabled和readonly属性分别用于禁用和只读表单控件。 CSS的引入方式:CSS可以通过内部样式、外部样式...

    a标签置灰不可点击的实现方法

    4. **使用disabled属性(HTML5)** 虽然`&lt;a&gt;`标签本身不支持`disabled`属性,但你可以通过自定义CSS样式来模拟这一效果。创建一个`disabled-link`类,然后根据需要应用它。 ```css .disabled-link { pointer-...

    jQuery属性选择器用法实例分析

    这会为所有超链接中href属性值以***开头的标签添加红色边框。 - 筛选value属性中包含“input”的表单元素: ```javascript $("*[value*='input']").css("border", "1px solid red"); ``` 这会为所有value属性中包含...

    HTML学习笔记

    3. **布尔属性**:这类属性仅需声明即有效,如`disabled`、`checked`等,它们的存在意味着属性为“真”,否则为“假”。 #### 表单文件上传与字段提交规则 HTML表单中的文件上传功能,涉及将二进制文件编码为文本...

    Javascript知识点汇总.pdf

    10. **只读和禁用属性**:`readonly`属性使输入元素只读,用户不能修改其内容;`disabled`属性使元素失效,用户无法交互。 11. **隐藏域**:`&lt;input type="hidden"&gt;`用于创建隐藏字段,它们不显示在页面上,但可以...

    DOM参考手册.docx

    2. `disabled`:设置或返回按钮是否被禁用,可以用来控制按钮的交互状态。 3. `form`:返回包含按钮的表单对象,如果按钮不在表单内,则返回`null`。 4. `name`:设置或返回按钮的名称,用于识别和区分多个按钮。 5....

    html+css网页设计复习题(可编辑修改word版).docx

    `disabled` 属性则用于禁用表单元素,使其呈灰色且不可编辑,如 `&lt;input type="text" disabled&gt;`。 2. **按钮类型**:`type="submit"` 创建提交按钮,用于提交表单;`type="reset"` 创建重置按钮,用于清空表单数据...

    Javascript知识点汇总.doc

    - 只读和禁用属性:readonly和disabled属性分别用于文本框等输入元素。 - 动画和特效:利用setTimeout()和setInterval()实现定时任务,通过修改CSS属性实现动态效果。 JavaScript在现代Web开发中扮演着至关重要的...

    HTML5技术参考表

    - `disabled`: 禁用按钮。 - `form`: 关联的表单。 - `formaction`: 提交表单时的目标URL。 - `formenctype`: 表单数据的编码方式。 - `formmethod`: 提交表单的方法。 - `formnovalidate`: 是否跳过表单验证...

    Extjs学习—总结的extjs的一些常用小知识点

    1. **`disabled` 属性**: - 作用:控制组件是否禁用。 - 示例代码:`disabled: true` - 说明:当设置为 `true` 时,组件将被禁用,用户无法与之交互。 2. **`buttonAlign` 属性**: - 作用:设置按钮的对齐...

Global site tag (gtag.js) - Google Analytics