我有一个复选框,想获得非常初始值,或者换句话说得到默认值,就像我们得到文本框的默认值一样:
document.getElementById("myTextBoxID").defaultValue
我想使用jQuery / JS
做类似的事情 document.getElementById("myChkBoxID").defaultValue
因此,如果我第一次从服务器检查复选框值...现在每当用户更改复选框时...我应该有办法将其恢复到非常初始状态
是否可能
答案 0 :(得分:3)
尝试:
document.getElementById("myChkBoxID").defaultChecked
答案 1 :(得分:0)
只需在页面加载时保存数据:
$(function() {
$(':input').each(function() {
$(this).data('default', $(this).val());
});
});
现在,对于任何<input />
元素,您可以轻松获取其默认值:
$('#yourInputElement').data('default');
如果要将元素重置为默认状态,只需再次调用val()
:
$('#yourInputElement').val($('#yourInputElement').data('default'));
答案 2 :(得分:0)
使用defaultChecked
属性。
defaultChecked
和defaultValue
为defined in DOM level 2,如下所示:
defaultChecked类型为boolean
当type具有值“radio”或“checkbox”时,这表示HTML checked属性 元素。如果状态为,则此属性的值不会更改 相应的表单控件在交互式用户代理中发生更改。查看已选中 HTML 4.01中的属性定义。
DOMString类型的defaultValue
当元素的type属性具有值“text”,“file”或“password”时,这个 表示元素的HTML值属性。该属性的值不是 如果相应表单控件的内容在交互式用户代理中更改, 变化。请参阅HTML 4.01中的value属性定义。
请注意,复选框确实有一个您可以更改的值属性,但它通常不是您想要的,并且可能导致难以发现的错误......
备选方案:
由于您要让服务器设置初始值,您可以包含一个隐藏的输入字段,让服务器在其上设置初始状态。
或者你可以reset整个表格。
答案 3 :(得分:0)
您需要以某种方式存储默认值。在这种情况下,我认为数据属性是可以接受的。
//onload
$('#textboxID, #checkboxID').each(function(){
$(this).data('default', $(this).val());
});
//on reset
$('#textboxID, #checkboxID').each(function(){
$(this).val( $(this).data('default'));
});