jQuery:绑定函数到模糊

时间:2017-09-06 11:08:01

标签: jquery forms function bind onblur

到目前为止,我知道有很多相关的问题已被提出,但我找不到任何可以解决我问题的问题 我的格式与上一个问题相同 -

body {
  background-color: black;
}
.input-icon{
   float:left;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link href="https://www.w3schools.com/w3css/4/w3.css" rel="stylesheet"/>
<form class="w3-container w3-white">
  <div class="w3-row-padding">
    <div class="w3-col m12">
      
<p>
<i class="fa fa-envelope-o fa-2x fa-fw input-icon" aria-hidden="true"></i>
<input class="w3-input w3-animate-input" type="text" placeholder="E-Mail" style="width: 40%; max-width: 90% !important;">
</p>
    </div>
  </div>
</form>

现在想通过jQuery将一个函数绑定到我的textfield上。这就是新代码的样子:

function myFunction(text) {
  alert(text);
}
$(document).ready(function() {
  $("#input").blur(myFunction("hello"));
});
body {
  background-color: black;
}

.input-icon {
  float: left;
}
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">

<form class="w3-container w3-white">
  <div class="w3-row-padding">
    <div class="w3-col m12">

      <p>
        <i class="fa fa-envelope-o fa-2x fa-fw input-icon" aria-hidden="true"></i>
        <input class="w3-input w3-animate-input" type="text" placeholder="E-Mail" style="width: 40%; max-width: 90% !important;" id="input">
      </p>
    </div>
  </div>
</form>

你可以非常清楚地看到问题 - 它执行一次myFunction()而不再执行。我听说在.bind()中执行myFunction()之前设置一个Timeout会有所帮助,但这并没有真正向我解释:为什么?
感谢所有答案,一如既往,提前,
  - 搜索解决方案(是的,几乎每天都在搜索解决方案;))

1 个答案:

答案 0 :(得分:0)

检查fiddle。刚删除已包含的外部js并将模糊功能更改为

$('#lol').on('blur',function(){
    myFunction();
});

$('#lol').trigger('blur');