jquery javascript获取复选框的初始值

时间:2012-01-25 21:58:00

标签: javascript jquery

我有一个复选框,想获得非常初始值,或者换句话说得到默认值,就像我们得到文本框的默认值一样:

 document.getElementById("myTextBoxID").defaultValue

我想使用jQuery / JS

做类似的事情
 document.getElementById("myChkBoxID").defaultValue

因此,如果我第一次从服务器检查复选框值...现在每当用户更改复选框时...我应该有办法将其恢复到非常初始状态

是否可能

4 个答案:

答案 0 :(得分:3)

尝试:

    document.getElementById("myChkBoxID").defaultChecked 

https://developer.mozilla.org/en/DOM/HTMLInputElement

答案 1 :(得分:0)

只需在页面加载时保存数据:

$(function() {
  $(':input').each(function() {
    $(this).data('default', $(this).val());
  });
});

现在,对于任何<input />元素,您可以轻松获取其默认值:

$('#yourInputElement').data('default');

如果要将元素重置为默认状态,只需再次调用val()

$('#yourInputElement').val($('#yourInputElement').data('default'));

答案 2 :(得分:0)

使用defaultChecked属性。

defaultCheckeddefaultValuedefined 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'));
});