Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 不显示禁用的选项元素?_Jquery_Html - Fatal编程技术网

Jquery 不显示禁用的选项元素?

Jquery 不显示禁用的选项元素?,jquery,html,Jquery,Html,我想知道是否有办法不显示禁用的元素?如果启用了它们(通过javascript/jquery),则显示它们?您可以在jquery中执行以下操作,假设您对输入标记使用正确的HTML脚本: $('input[disabled="disabled"']).hide(); 然后只需在jQuery代码中添加一个重新启用它们的show() 更新 我没有提到问题的标题。以上是表单输入标记的解决方案,而不是选择选项标记。在CSS中,您可以执行以下操作 option[disabled] { display

我想知道是否有办法不显示禁用的元素?如果启用了它们(通过javascript/jquery),则显示它们?

您可以在jquery中执行以下操作,假设您对
输入
标记使用正确的HTML脚本:

$('input[disabled="disabled"']).hide();
然后只需在jQuery代码中添加一个重新启用它们的
show()

更新
我没有提到问题的标题。以上是表单
输入
标记的解决方案,而不是选择
选项
标记。

在CSS中,您可以执行以下操作

option[disabled]
{
    display:none;
}

它应该隐藏已禁用的选项,但不确定浏览器兼容性。

使用隐藏元素的范围将其包装。虽然不漂亮,但很管用。例如

jQuery

$(document).ready(function() {
  $("#togglebutton").click(function(){
    var Element=$("#disableme");

    if (Element.attr("disabled")==false) {
      Element.attr("disabled","disabled").wrap("<span class='hide'></span>");
    } else {
      Element.removeAttr("disabled");
      Element.parent('span.hide').replaceWith(Element.parent('span.hide').html());
    }
  });
});
HTML

<input type="text" id="disableme"><br />
<input type="button" id="togglebutton" value="Toggle disable">


在IE 6、IE 8、Firefox 3.6.6、Opera 10.60和Iron 5.0.380上进行测试。

可以显示您已经达到的脚本吗?与Jason的相同,这在跨浏览器情况下不起作用,需要使用不同的方法来处理操作。这取决于“跨浏览器”的含义。它适用于IE7+、Firefox 3+、Safari 3+、Chrome和Opera 9+——该网站需要在新的Firefox ie 7+和新的其他浏览器中工作。是的,这就是为什么我说我不确定浏览器兼容性的原因。@Zurahn-那不是真的,我指的不是
[禁用]
,而是
显示:无自己试试:如果我使用类选择器,这会起作用吗?他们有不同的课程。@Nick,你确定吗?如果这是CSS,你是对的。我得检查一下@史蒂文,是的,只需将你的类添加到输入中:
input.yourclass[disabled=“disabled”]
他想隐藏
元素,而不是
你不能隐藏跨浏览器:)@Nick,啊哈。只有在问题标题中,我往往会错过这些东西;)
<input type="text" id="disableme"><br />
<input type="button" id="togglebutton" value="Toggle disable">