如何使用 jQuery 更改 data-rules-required 的值

How can i change the value of data-rules-required using jQuery

我在我的网站上使用这样的验证脚本:

<input type="text" id="Abomonatspreis" name="Abomonatspreis" form="formular" data-rules-required="true">

在某些情况下,我必须使用 jQuery 将 data-rules-required 值更改为“false”。

我这样试过,还是不行:

$("#Abomonatspreis").attr({data-rules-required: "false"})

有人知道吗?

谢谢 英戈

您不需要 jQuery。这是 DOM API:

的一项微不足道的任务

document.getElementById('Abomonatspreis').dataset.rulesRequired = "false";

console.log(document.getElementById('Abomonatspreis').outerHTML);
<input type="text" id="Abomonatspreis" name="Abomonatspreis" form="formular" data-rules-required="true">

除了使用 dataset 对象,您还可以使用 HTML 属性。两者都是自动同步的,这意味着如果你改变其中一个,你也会隐式地改变另一个。

document.getElementById('Abomonatspreis').setAttribute('data-rules-required', 'false');

您尝试失败的原因是您需要引用属性名称,否则部分之间的 - 将被视为 minus 运算符。

如果您坚持使用第三方库来完成琐碎的任务,这里是 jQuery 版本:

$("#Abomonatspreis").attr({"data-rules-required": "false"})

console.log($("#Abomonatspreis")[0].outerHTML);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" id="Abomonatspreis" name="Abomonatspreis" form="formular" data-rules-required="true">