我正在寻找一种方法,使用jQuery来获取输入字段的默认值(在HTML字段中)。
看起来很简单。只是调用$("#id-of-field").attr('value')
应该返回我想要的值吗?
事情是,如果值是Foo
,当我加载页面时,它返回Foo
。没问题。但是如果我在字段中写Bar
,然后重新加载(不提交)页面,$("#id-of-field").attr('value')
将返回Bar
,即使在源代码中,该字段的value属性为仍然是Foo
。
这使得我的表单的验证变得很粘,因为当我的默认值忽略它们时,如果字段尚未填充,我可以在“要忽略的值”的混合中得到一个实际值。
仅供参考,我不能手动输入值,因为表单是动态的,并且不能直接查询数据库,因为它是一个Wordpress网站。
答案 0 :(得分:5)
输入字段具有defaultValue
DOM属性,可以完全满足您的需要。
根据this answer,jQuery(> 1.6.3)访问它的方式是
$('#element').prop('defaultValue')
或者,在纯JavaScript中,例如 -
document.getElementById("element").defaultValue
答案 1 :(得分:1)
试试这个
$('inputSelector').prop('defaultValue');
答案 2 :(得分:1)
你可以试试 -
$("#id-of-field")[0].defaultValue
那应该得到DOM defaultValue
属性,该属性应该为您提供文本框的原始值