我有一个全局变量listId(参考下面的代码)声明了一个默认值,然后我在jq("#nav1 li a")内分配它。click(function()但是一旦任何其他javascript函数调用发生在这个之后,listId不反映改变的值,而不是它只是在声明期间分配的默认值。如何使其反映更改后的值?
感谢listId = 'x';
var jq=jQuery.noConflict();// for avoiding conflict
jq("#nav1").click(function(){
alert(this.id);
listId = this.id; //this.id is displayed in alert message
});
function pageSwitch(){
alert('on change id : '+listId);
//when called after the click function, this does not reflect changed values
}
您提供的代码对我有效。日志含义成功将listId变量修改为nav1。我编写了一个小测试脚本,它将listId更改为div的id onClick,然后使用函数将其更改回"x"。每次都很有效。点击这里进行测试
谢谢你的帮助,实际上这个函数是在点击h:commandLink时调用的。所以每次页面被重新加载,所以做的js函数…我只是使用了a4j:commandLink,它工作得很好…