我如何添加一个属性到特定的HTML标签在jQuery?

例如,像这个简单的HTML:

<input id="someid" />

然后添加一个属性disabled="true",如下所示:

<input id="someid" disabled="true" />

$('#someid').attr('disabled', 'true');

$('#someid').attr('disabled', 'true');

$('.some_selector').attr('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');

$('#yourid').prop('disabled', true);

添加属性为:

$('#Selector_id').attr('disabled',true);

使用以下代码:

<script> 
   $('#someid').attr('disabled', 'true'); 
</script>

如果您试图使用removeProp()“已检查”,“禁用”或“选定”,它可能无法工作。要删除属性,请使用带'false'参数的prop。

        $('.my-input').prop('disabled', true); //adding property
        $('.my-input').prop('disabled', false); //removing property

文档:https://api.jquery.com/removeprop/