使用jQuery删除输入值

时间:2009-10-06 10:59:10

标签: jquery

我需要使用jQuery从隐藏和文本输入框中删除一些值,但不知何故这不起作用

示例:

<input type="hidden" value="abc" name="ht1" id="ht1" />
<input type="text" name="t1" id="t1" />

我使用以下jQuery代码通过onclick事件删除值

$('#rt1').click(function() {
    $('#t1').val();  
    $('#ht1').val();  
});

我可以清空输入框的内容并使用jQuery清除隐藏字段的值吗?

6 个答案:

答案 0 :(得分:26)

你应该这样做:

$('#rt1').click(function() {
    $('#t1').val('');  
    $('#ht1').val('');  
});

也就是说,传递一个空字符串。要么是这样,要么使用removeAttr(query.removeAttr('value'))。

答案 1 :(得分:16)

$('#rt1').click(function() {
    $('#t1').attr('value', '');  
    $('#ht1').attr('value', '');  
});

答案 2 :(得分:6)

更短的版本

$('#rt1').click(function() {
    $('#t1, #ht1').val('');  
});

答案 3 :(得分:4)

您只需要在val()函数中传递一个空字符串,或者您可以使用将给定属性设置为给定值的更通用的attr()函数:

$('#rt1').click(function() {
    $('#t1').attr("value", "");  
    $('#ht1').attr("value", "");  
});

答案 4 :(得分:2)

这应该是:

$('#rt1').click(function() {
    $('#t1').val('');  
    $('#ht1').val('');  
});

当val()函数没有参数时,它将作为getter而不是setter

答案 5 :(得分:1)

$(document).ready(function(){ 

  $('input').click(function(){ 

    $(this).removeAttr('value');

  });
});

//remove value when click

//without effect input type  submit 
$(document).ready(function(){ 

  $('input:not(:submit)').click(function(){ 

    $(this).removeAttr('value');
  });
});