在JQuery中清除文本字段值

Yus*_*ick 61 javascript forms jquery input

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

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

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

the*_*dox 137

doc_val_check == "";   // == is equality check operator
Run Code Online (Sandbox Code Playgroud)

应该

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

                       // so you need =
Run Code Online (Sandbox Code Playgroud)

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

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
    }
Run Code Online (Sandbox Code Playgroud)

要更新您""需要尝试的文本字段

$('#doc_title').attr('value', doc_val_check); 
// or 
$('doc_title').val(doc_val_check);
Run Code Online (Sandbox Code Playgroud)

但我认为你不需要上面的过程.


简而言之,只需一行

$('#doc_title').val("");
Run Code Online (Sandbox Code Playgroud)

注意

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

了解更多 .val()

  • 调用`doc_val_check =""`不会更新元素的`value`属性; 你最终会得到一个变量,它是一个空字符串,与你的元素的`value`属性完全分开. (5认同)

小智 25

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

$('#doc_title').val("");
Run Code Online (Sandbox Code Playgroud)


Too*_*Jam 6

而不是所有那些:

$('#doc_title').attr("value", "");
Run Code Online (Sandbox Code Playgroud)

  • 他可以使用`.val()`函数. (5认同)
  • 能和**应该**.价值是一种财产,而不是一种属性; 使用`.attr()`设置属性并不是您设置属性的绝对保证. (3认同)

xda*_*azz 6

你需要的是:

if ($('#doc_title').val()) {
  $('#doc_title').val('');
}
Run Code Online (Sandbox Code Playgroud)


San*_*kar 5

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

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


Kam*_*han 5

你可以使用这条线清除它

$('#TextBoxID').val("");
Run Code Online (Sandbox Code Playgroud)