簡體   English   中英

清除 JQuery 中的文本字段值

[英]Clear text field value in JQuery

我知道這是一個簡單的問題,但出於某種原因,這對我不起作用。 我有一個每次更改下拉菜單時都會觸發的功能。 這是假設獲取文本字段的當前值的相關代碼,如果存在值,則清除它包含在 .change 函數中:

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

我覺得我錯過了一些非常簡單的東西。

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()

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

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

而不是所有這些:

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

你需要的是:

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

簡單來說,您可以使用以下代碼清除表單中的所有文本字段、文本區域、下拉列表、單選按鈕、復選框。

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

如果你使用 jQuery,那么你可以使用這個:

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

您可以使用此行清除它

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

我們可以用它來清除文本

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

大多數情況下,您只需設置 .val() 方法。 所有答案都非常准確,只是想將我的結果發布給可能需要通過呈現的客戶端 ID 設置值的任何人。

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

您正在將doc_val_check與空字符串進行比較。 您想將空字符串分配給doc_val_check

所以應該是這樣的:

doc_val_check = "";

使用jQuery.prototype.val來獲取/設置字段值:

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

 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>

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

要么

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

如果您想擁有具有可見空白文本的元素,請執行以下操作:

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

嘗試使用這個:

 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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM