我只是想将blur
事件绑定到我页面上找到的一组inputs
。
var $urlTextBoxes = $(`input[type='url'][data-url-prefixer]`);
$urlTextBoxes.on("blur", onUrlTextBoxBlur);
而onUrlTextBoxBlur
是一个简单的function
检查当前值,
如果{'1}}在前缀为'http://'时已经显示(如果尚未设置)。<input type="url" data-url-prefixer />
被调用,则会在$(function () { // ... }
上调用onUrlTextBoxBlur
。
另一方面,如果blur
在加载时隐藏(在div内)并在稍后显示,input
永远不会被击中,我不明白这一点为什么?
我试过
onUrlTextBoxBlur
根本不起作用。
把
$(document).on("blur", $urlTextBoxes, onUrlTextBoxBlur);
显示
if (jQuery._data($("#ExternalRegistrationUrl")[0] !== undefined)) {
console.log($("#ExternalRegistrationUrl")[0]);
console.log(jQuery._data($("#ExternalRegistrationUrl")[0], "events"));
}
在master中,
input#ExternalRegistrationUrl.form-control
Object {blur: Array[1]}
在我的子视图中。不知何故,事件gots丢失了。但是,这怎么可能呢?在input#ExternalRegistrationUrl.form-control
undefined
onReady之前调用Masters
onReady,不是吗?
似乎是另一个插件正在删除内容并在之后重新添加它。因此,所有SubViews
都会丢失。现在我需要一种方法在插件完成魔术之后通过事件重新绑定!
答案 0 :(得分:1)
HIDDEN FIELD还使用BLUR
<强> FIDDLE 强>
<强> SCRIPT 强>
$(document).ready(function(){
$(":text").hide();
$(":text").blur(function(){
alert("Blurred");
});;
$(":text").show();
});
<强> HTML 强>
<input type="text" />
<强> CSS 强>
input
{
display:none
}