【问题标题】:JQuery clearing an input text fieldJQuery清除输入文本字段
【发布时间】:2009-12-08 18:05:02
【问题描述】:

我有一个关于在单击同一页面上的不同下拉菜单时清除输入文本字段的问题,应清除输入文本字段中的值。这是我的 jQuery ftn。每次我从下拉列表中选择一个选项但该字段没有被清除时,都会显示警报消息。知道正确的语法应该是什么:

jQuery(document).ready(function(){

        jQuery("[id$='serialNumForm:noSerialNumProductKey']").change(function () {
            alert("In jquery change ftn!!");
            jQuery("[id$='serialNumForm:inputSN']").value="";
        });     
    });

我有一个表单 ID,所以我需要将 ID 添加到元素 ID 名称之前。警报显示正常,只是值没有改变。

【问题讨论】:

    标签: jquery syntax


    【解决方案1】:

    你想使用:

    jQuery("[id$='serialNumForm:inputSN']").val("");
    

    【讨论】:

      【解决方案2】:

      调用 "jQuery("[id$='serialNumForm:inputSN']")" 不会返回一个输入元素,而是返回一个 jQuery 对象。你有两个选择:

      用这个来获取核心元素:

      jQuery("[id$='serialNumForm:inputSN']").get(0)
      

      或者,正如贾斯汀所说,使用 jQuery val() 方法:

      jQuery("[id$='serialNumForm:inputSN']").val("");
      

      第二种方式更可靠,因为它将值应用于所有匹配元素,而第一种仅将其应用于第一个匹配元素(如 get(0) 中的 0 所示)

      【讨论】:

      • 您也可以使用 jQuery("[id$='serialNumForm:inputSN']")[0] 来获取该 dom 元素,因为 jQuery 对象是一个数组。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-22
      • 1970-01-01
      • 2011-10-16
      • 2011-10-26
      相关资源
      最近更新 更多