我如何添加一个属性到特定的HTML标签在jQuery?
例如,像这个简单的HTML:
<input id="someid" />
然后添加一个属性disabled="true",如下所示:
<input id="someid" disabled="true" />
我如何添加一个属性到特定的HTML标签在jQuery?
例如,像这个简单的HTML:
<input id="someid" />
然后添加一个属性disabled="true",如下所示:
<input id="someid" disabled="true" />
你可以像这样使用attr添加属性:
$('#someid').attr('name', 'value');
然而,对于像checked, disabled和readonly这样的DOM属性,正确的方法是使用prop(从JQuery 1.6开始)。
$('#someid').prop('disabled', true);
你可以使用jQuery的.attr函数来设置属性。删除它们是通过. removeattr函数完成的。
//.attr()
$("element").attr("id", "newId");
$("element").attr("disabled", true);
//.removeAttr()
$("element").removeAttr("id");
$("element").removeAttr("disabled");
最好的解决方案:从jQuery v1.6你可以使用prop()添加属性
$('#someid').prop('disabled', true);
要删除它,使用removeProp()
$('#someid').removeProp('disabled');
参考
还要注意.removeProp() 方法不应用于设置这些参数 属性为false。曾经是本地人 属性被删除,则不能删除 再次补充道。参见.removeProp() 更多的信息。
这可能会更有帮助....
$("element").prop("id", "modifiedId");
//for boolean
$("element").prop("disabled", true);
//also you can remove attribute
$('#someid').removeProp('disabled');
如果您试图使用removeProp()“已检查”,“禁用”或“选定”,它可能无法工作。要删除属性,请使用带'false'参数的prop。
$('.my-input').prop('disabled', true); //adding property
$('.my-input').prop('disabled', false); //removing property
文档:https://api.jquery.com/removeprop/