我知道这是一个简单的问题,但由于某种原因,这对我不起作用。我有一个每次更改下拉菜单时都会触发的功能。这是假设获取文本字段的当前值的相关代码,如果存在值,请清除 .change 函数中包含的值:
var doc_val_check = $('#doc_title').attr("value");
if (doc_val_check.length > 0) {
doc_val_check == "";
}
我觉得我错过了一些非常简单的东西。
我知道这是一个简单的问题,但由于某种原因,这对我不起作用。我有一个每次更改下拉菜单时都会触发的功能。这是假设获取文本字段的当前值的相关代码,如果存在值,请清除 .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
}
要使用 a 更新您的文本字段,""
您需要尝试
$('#doc_title').attr('value', doc_val_check);
// or
$('doc_title').val(doc_val_check);
但我认为你不需要上述过程。
$('#doc_title').val("");
.val()
用于设置/获取文本字段中的值。有参数它充当setter,没有参数充当getter。
阅读更多关于.val()
如果要清除文本字段,请使用:
$('#doc_title').val("");
您可以使用此行清除它
$('#TextBoxID').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("");
}
我们可以用它来清除文本
$('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(' ');
尝试使用这个:
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>