onblur输入jquery时的事件

时间:2015-10-19 13:40:57

标签: javascript jquery

我有一个输入文字(地址),可以从Google地图自动填充中获取结果。 单击结果后,结果将显示在输入文本和显示提交按钮上。 我想,如果我们再次点击输入文本: - 删除谷歌的结果(开始新的研究) - 隐藏提交按钮。

但我的剧本效果不佳。

Jquery代码:

$("#adress").blur(function() {
              if (!this.value) {
             // Hide submit button
             $('#button_submit').css('display', 'none');
             }
       });

我的HTML代码:

<input type="text" id="adress" value="" placeholder="Please enter adress" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = '';}">

jsfiddel上的一个例子:jsfiddle.net/np1wkh9p/12

帮助我的想法?

谢谢!

4 个答案:

答案 0 :(得分:1)

你忘记了id名称之前的#,并且当他点击进出你必须在焦点上使用的文本并且模糊时,它就可以工作了

$("#address").on('blur focus',function() {
// ^ here
  if (!this.value) {
    // Hide submit button
    $('#button_submit').css('display', 'none');
  }
});

在此处查看http://jsfiddle.net/np1wkh9p/18/

答案 1 :(得分:0)

尝试在地址前提供ID

$("#adress").on(function() {
   if (!this.value) {
     // Hide submit button
     $('#button_submit').css('display', 'none');
   }
});

这应该适合你。

答案 2 :(得分:0)

您需要一个#for ID而不需要内联脚本:

$(function() {
  $("#adress").blur(function() {
    if (!this.value) {
     $('#button_submit').hide();
    }
  })
  .focus(function() {
    this.value ="";
    $('#button_submit').show();
  });
 });
使用

<input type="text" id="adress" value="" placeholder="Please enter adress" />

答案 3 :(得分:0)

我找到的解决方案:

$("#address").on('blur focus', function() {
    if (this.value=='') {
    $('#button_submit').css('display', 'none');         
     }
});

http://jsfiddle.net/np1wkh9p/17/