我有一个页面,我想根据从下拉字段中选择的值显示/隐藏字段。这在页面加载时工作正常。但是当一个ajax调用更新页面的一部分时,我的jquery document.ready当然不会触发。我尝试过很多关于这个问题的解决方案但没有运气我无法编辑ajax调用以添加回调,我无权访问。
这是我的简单Jquery代码:(遗留产品有jquery1.3但我可以升级这个版本)
$(document).ready(function(){
//my code to hide/show a field
$('#mySelect').change(function(){
//show or hide
});
});
这在页面加载时有效,但是当执行下面的ajax调用时,我的jquery不再起作用了:(注意:我无法编辑此代码)
function sendCommand(a,c,e,f,g,j,l,m){
if(AJAX._engineReady&&(a=document.getElementById(a))){
var o=a.selectedIndex;
if(!(o<0)){
a=a.options[o].value;
c=upsertURLParam(c,"OCTYPE",a);
o=document.getElementById(m);
m=null;if(o)m=o.value;
o=document.getElementById(j);
storeUserValues(o);
o=new AJAXRequest;
o.setCtxtParams(c);
o.setTimeout(6E4);
/*
* lots of parameter setting omitted here
*/
AJAX.send(o);
AJAX._engineReady=!1
}
}
}
我尝试了不同的方法,如jquery .on(),. live(),. delegate()等,我还没有找到解决方法。此外,jquery .ajaxComplete()似乎只在我们进行jquery-ajax调用时才使用,而这种情况并非如此。任何帮助都会受到赞赏。