单击输入值上的事件

时间:2014-07-24 19:39:25

标签: javascript input

我想提醒他们#water'#water'当我点击文字'#water'。相反,我得到了'对象对象'。我在这里完全错过了这条船吗?我们的想法是,如果有多个值,请说出#water;#water","#tea"," soda",您可以单独点击每个文本而不仅仅是通过单击文本区域触发事件。

   <input type='text' id='input-tags' name='hashtags' value="#water">

   <script>
     $('#input-tags').click(function(){
       alert($(this))
     })
   </script>

3 个答案:

答案 0 :(得分:3)

$(this)是对象的引用。你得到了预期的行为。

如果您想查看输入的内容,请使用$(this).val();

答案 1 :(得分:1)

<script>
  $('#input-tags').click(function(){
   alert($(this).val())
 })
</script>

答案 2 :(得分:0)

jQuerys Sizzle(用于选择内容的引擎)不返回HTMLObject(<input type='text' ...>),而是返回jQuery对象:

[input#input-tags, context: input#input-tags, jquery: "1.11.0", constructor: function, selector: "", toArray: function…]
0: input#input-tags
context: input#input-tags
length: 1
__proto__: Object[0]

简化事情:获取#water的正确方法是

$(this).val()

http://api.jquery.com/val/)或

$(this)[0].value

因为$(this)[0]代表HTMLObject。