我正在尝试创建一个“你是如何找到我们表单元素的”,但我遇到了一些 jQuery 问题。用户从选项列表中进行选择,其中之一是“其他”。当选择其他文本框时,可以让它们更具体。为了使这个更加用户友好,当显示另一个选项时隐藏输入。我已经让 jQuery 在用户更改选项时显示和隐藏文本输入,但我希望它能够在用户选择其他选项、填写某些内容,然后选择另一个选项时清除文本框中的任何文本。
<label for="pcFindUs">How did you hear about us?</label>
<select name="pcFindUs" id="pcFindUs" onChange="getval();">
<option value="No Answer">Select One</option>
<option value="Internet Search">Internet search</option>
<option value="Internet Advertisement">Internet ad</option>
<option value="Soclail Media">Social media </option>
<option value="Unknown">I don't remember</option>
<option value="other">Other</option>
</select><br/>
<div id="pcHiddenOtherSpecify" style="display:none;">
<label for="pcFindUsSpecify">(Please Specify): </label><input type="text" value="" id="pcFindUsSpecify" name="pcFindUsSpecify" maxlength="50">
</div>
<script>
function getval(){
var values = $('#pcFindUs :selected').val();
if (values == "other"){
$("#pcHiddenOtherSpecify").css("display","block");
}else{
$("#pcHiddenOtherSpecify").attr("value","");
$("#pcHiddenOtherSpecify").css("display","none");
}
}
</script>
包含附加输入的 pcHiddenOtherSpecify
div 出现和消失都很好,但 #pcHiddenOtherSpecify
的值仍然包含用户输入的内容。
我也尝试过
$("#pcHiddenOtherSpecify").val("");
没有运气。你知道我在这里可能做错了什么吗?
最佳答案
您正在尝试更改 div
元素的值,而不是输入。试试这个:
$("#pcFindUsSpecify").val("");
关于javascript - jquery 不改变文本输入的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35158558/