jquery不改变文本输入的值

时间:2016-02-02 16:21:08

标签: javascript jquery

我试图创建一个"你是如何找到我们的形式元素"而且我遇到了一些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("");

没有运气。我在这里做错了什么想法?

3 个答案:

答案 0 :(得分:8)

您正在尝试更改div元素的值,而不是输入。试试这个:

$("#pcFindUsSpecify").val("");

答案 1 :(得分:6)

ID错误

ExecutionProcessor

答案 2 :(得分:1)

$("#pcFindUsSpecify").val("");

检查出来 http://codepen.io/JcBurleson/pen/MKBBWq