在JQuery中清除文本字段值

时间:2012-06-08 15:32:10

标签: javascript jquery forms input

我知道这是一个简单的问题,但由于某些原因,这对我不起作用。每次更改下拉菜单时,我都会触发一个功能。以下是相关代码,用于获取文本字段的当前值,如果存在值,则清除.change函数中包含的内容:

var doc_val_check = $('#doc_title').attr("value");
    if (doc_val_check.length > 0) {
        doc_val_check == "";
    }

我觉得我错过了很简单的事情。

15 个答案:

答案 0 :(得分:130)

doc_val_check == "";   // == is equality check operator

应该是

doc_val_check = "";    // = is assign operator. you need to set empty value

                       // so you need =

你可以写下这样的完整代码:

var doc_val_check = $.trim( $('#doc_title').val() ); // take value of text 
                                                     // field using .val()
    if (doc_val_check.length) {
        doc_val_check = ""; // this will not update your text field
    }

要使用""更新文本字段,您需要尝试

$('#doc_title').attr('value', doc_val_check); 
// or 
$('doc_title').val(doc_val_check);

但我认为你不需要上述过程。


简而言之,只需一行

$('#doc_title').val("");

注意

.val()用于在文本字段中设置/获取值。使用参数时,它充当setter,不带参数充当getter。

详细了解 .val()

答案 1 :(得分:25)

如果要清除文本字段,请使用:

$('#doc_title').val("");

答案 2 :(得分:6)

而不是所有那些:

$('#doc_title').attr("value", "");

答案 3 :(得分:6)

您需要的是:

if ($('#doc_title').val()) {
  $('#doc_title').val('');
}

答案 4 :(得分:4)

如果您使用的是jQuery,那么您可以使用它:

// var doc_val_check = $('#doc_title').val(); - No need of this!
if ($('#doc_title').val().length > 0) {
    $('#doc_title').val("");
}

答案 5 :(得分:4)

以简单的方式,您可以使用以下代码清除表单中的所有文本字段,textarea,下拉列表,单选按钮,复选框。

function reset(){
    $('input[type=text]').val('');  
    $('#textarea').val(''); 
    $('input[type=select]').val('');
    $('input[type=radio]').val('');
    $('input[type=checkbox]').val('');  
}

答案 6 :(得分:4)

您可以使用此行清除它

$('#TextBoxID').val("");

答案 7 :(得分:3)

我们可以将其用于文字清晰



$('input[name="message"]').val("");  




答案 8 :(得分:1)

您正在将doc_val_check与空字符串进行比较。您想将空字符串分配给doc_val_check

所以它应该是这样的:

doc_val_check = "";

答案 9 :(得分:1)

在大多数情况下,您只需设置.val()方法。所有答案都非常准确,只是想将结果发布给可能需要通过呈现的客户端ID设置值的任何人。

 $('#' + '<%= doc_title.ClientID %>').val(null);

答案 10 :(得分:1)

使用jQuery.prototype.val获取/设置字段值:

var value = $('#doc_title').val();    // get value
$('#doc_title').val('');    // clear value

答案 11 :(得分:1)

  

      

    First Name: <input type="text" autocomplete="off" name="input1"/>
    <br/>
    Last Name: <input type="text" autocomplete="off" name="input2"/>
    <br/>
    <input type="submit" value="Submit" />
</form>
     

答案 12 :(得分:0)

$('#[element id]').val(null);

$('.[element class]').val(null);

答案 13 :(得分:0)

如果您想要包含可见空白文本的元素,请执行以下操作:

$('#doc_title').html('&nbsp;');

答案 14 :(得分:0)

尝试使用此:

function checkValue(){
  var value = $('#doc_title').val();
  if (value.length > 0) {
        $('#doc_title').val("");
        $('#doc_title').focus();  // To focus the input 
    }
    else{
    //do something
    }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>
<input type="text" id="doc_title" value="Sample text"/>
<button onclick="checkValue()">Check Value</button>
</body>