对于某些功能,我希望我的实际值和显示值不同。有没有办法通过JS做到这一点?
一种方法是获取另一个具有相同名称/标识但隐藏的输入标签。
答案 0 :(得分:0)
编辑: 我可能会这样做的方式是,如果需要使用JavaScript来促进属性状态,则在提交之前附加一些javascript,并将事件侦听器附加到输入,例如,如果您希望属性是自定义的,而不是“值”,则需要一个事件'change'侦听器,它将使您的自定义属性保持更新。
类似的东西:
element.addEventListener('change', () => {
element.setAttribute('myAttrName', element.value);
});
这里的重点是您不需要额外的元素,而是几行js。
答案 1 :(得分:0)
您可以在UI控件中有一个自定义属性假设您在谈论输入标签,那么它就像这样:
<input type='text' id='txt' value='Display Value' data-custattr='Actual Value' />
在读取值时,您可以获取实际值,例如:
document.getElementById('txt').getAttribute('data-custattr')
希望这会有所帮助。