2012-07-05 44 views
1

我希望在ajax-call(意味着.live)之后执行此代码如何更改代码?使用Keyup Function For Live

var el=document.getElementById('txt_url'); 
el.onkeyup=function(){ 
    var str=el.value; 
    if(str=='') return; 
    if(str.indexOf('http://')==-1 && str.length >= 7) 
    el.value='http://'+str; 
} 
+1

你想这个代码到AJAX后执行的称呼?如果是这样,您需要向我们展示您用来拨打电话的代码,而不是您想要运行的代码。 – 2012-07-05 09:17:48

回答

2

为了生活-结合的处理程序的一个元件使用了jQuery .on()方法。 (在jQuery 1.7)

$("body").on("keyup","#txt_url",function(){ 
    // your code 
}); 

它取代了弃用.live()处理程序。另外,如果你使用jQuery,我建议你一致地使用它 - 也用于元素选择和处理程序绑定。

或者,您可以在成功函数中绑定处理程序,但我更愿意以更一致的方式执行事件绑定。

0

您需要设置成功处理程序:

$.ajax({ 
    url: 'ajax/test.html', 
    success: function(data) { 
    var el=document.getElementById('txt_url'); 
    el.onkeyup=function(){ 
     var str=el.value; 
     if(str=='') return; 
     if(str.indexOf('http://')==-1 && str.length >= 7) 
     el.value='http://'+str; 
    } 
    } 
}); 

jQuery Ajax Documentation