我必须先禁用输入,然后单击链接以启用它们。
这是我迄今为止尝试过的,但它不起作用。
HTML:
<input type="text" disabled="disabled" class="inputDisabled" value="">
jQuery:
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').removeAttr("disabled")
});
这会显示“真”,然后显示“假”,但输入没有变化:
$("#edit").click(function(event){
alert('');
event.preventDefault();
alert($('.inputDisabled').attr('disabled'));
$('.inputDisabled').removeAttr("disabled");
alert($('.inputDisabled').attr('disabled'));
});
<input type="text" disabled="disabled" class="inputDisabled" value="">
<button id="edit">Edit</button>
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').removeAttr("disabled")
});
http://jsfiddle.net/ZwHfY/
要删除禁用的属性使用,
$("#elementID").removeAttr('disabled');
并添加禁用属性使用,
$("#elementID").prop("disabled", true);
享受:)
在使用jQuery时,始终使用prop()
方法来启用或禁用元素(有关原因,请参见下文)。
在您的情况下,它将是:
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').prop("disabled", false); // Element(s) are now enabled.
});
这里的jsFiddle示例。
如果可以使用属性来执行此操作,为什么要使用属性?
基本上,在获取或设置属性时应使用prop()
(例如autoplay
、检查
、禁用
和需要
等等)。
通过使用removeAttr(),可以完全删除禁用的属性本身,而prop()只是将属性的基础布尔值设置为false。
虽然可以使用attr()完成您想要做的事情,但这并不意味着应该这样做(并且可能会导致奇怪/有问题的行为,如本例)。
以下摘录(摘自prop()的jQuery文档)更详细地解释了这些要点:
“属性和属性之间的差异在特定情况下可能很重要。在jQuery 1.6之前,在检索某些属性时,.attr()
方法有时会考虑属性值,这可能会导致不一致的行为。在jQuery 1.6中,.prop()
方法提供了显式检索属性值的方法,而检索属性。“”
“属性通常会影响DOM元素的动态状态,而不会更改序列化的HTML属性。例如,输入元素的值属性、输入和按钮的禁用属性或复选框的选中属性。例如,.prop()应使用
方法设置禁用和选中而不是。attr()方法。<代码>。val()方法应用于获取和设置值。“”
问题内容: 我必须首先禁用输入,然后单击链接以启用它们。 到目前为止,这是我尝试过的方法,但是没有用。 HTML: jQuery的: 这显示给我,然后输入没有任何变化: 问题答案: ** 使用jQuery时,请始终使用该方法来启用或禁用元素(有关原因,请参见下文)。 在您的情况下,它将是: 为什么在可以使用/ 做到这一点时使用? 基本上,应该获取或设置时,可使用特性(如,,和在其他之中)。 通过使
问题内容: 我有这个属性的股利。我需要 使用$(selector).css()删除尝试,但我不知道要设置什么值,因为它是“ none”。 问题答案: css()的文档说,将style属性设置为空字符串将删除该属性(如果它不存在于样式表中): 将样式属性的值设置为空字符串(例如 ),如果该属性已被直接应用(无论是在HTML样式属性中,通过jQuery的方法还是通过对样式属性的直接DOM操作),则将从
问题内容: 是否可以使用JavaScript删除元素的CSS属性?例如我有,现在我想通过JavaScript删除zoom属性吗? 问题答案: 通常,您不能从这样的内置对象中删除属性,当然也不能从IE中删除属性(样式对象的zoom属性是IE扩展名) 您可以将其设置为默认值: 现在,有效缩放将来自样式表中定义的任何内容(通过链接和样式标签) 因此,此语法只会修改此元素的局部样式。
问题内容: 我习惯于自动重新格式化我的代码,使其整洁并保持导入顺序。但是有时,它与IDE自动保存一起以不舒服的方式工作。像这种情况: 我想将新包添加到我的代码中。 然后,我将其安装并刷新我的IDE缓存。 我可以轻松地使用带有IDE自动完成和导航功能的软件包。 和IDE 会发生什么? 我添加新包裹 为了运行,我必须保存一个文件 查找未使用的软件包并将其从导入中删除。不好。 解决方法: A.手动添加新
问题内容: 我有下面的代码删除mysql记录,我想对其进行转换,因此它将是ajax / jquery代码,因此从表中删除记录后,我可以留在同一页上。现在,它工作正常,但不在同一页面上,我需要刷新页面以查看结果。这只是完整代码的一部分。所有代码都在一页上。 问题答案: Delete 现在在本节中写下 现在在“ delete_page.php”页面中执行此操作 休息,我希望你知道。希望这可以帮助
首先也是最重要的一点是我的目标代码: table width=“100%”cellspacing=“1”cellpadding=“5”border=“1”style=“页边空白顶部:30px;边框:实心1px#999999 我想使用jquery从表中删除边框属性。我有数百个表使用相同的代码集,并希望尝试不同的外观。 任何帮助都将不胜感激