Nov
14
dwz是一个富客户端框架,基于jquery开发的.能让开发员写最小的js,开发出好用的软件.
但我在使用的时候发现部分问题.这个框架会先加载全部使用的到js,然后每次与服务端的请求都使用ajax进行.然后入到当前页面的代码里.
但是问题来了.每次加载的页面里多多少少都会有一些专用的js函数.如:
访问A页面时,有一个testmsg()的函数,然后我再加载访问B页面,里面也有一个testmsg()函数.
如果再访问A页面并触发testmsg()函数.注意这里触发的实际上是B页面的testmsg()函数.因为只有一个页面的关系所有直接定义的函数都系属于window类下的函数.
这里只是一个简单的例子,如果没有相关的规定.很容易在开发的时候造成错误.
所以我建议所有使用dwz的开发者,在每个页面中写js必须增加多一层如:
<script type="text/javascript">
var add_member_editor ={
testmsg:function(accountId){
alertMsg.confirm("您修改的资料未保存,请选择保存或取消!", {
okCall: function(){
$.post("ajaxDone.html", {accountId: accountId}, ajaxDone, "json");
}
});
}
};
</script>
调用的时候使用
<a class="button" href="javascript:;" onclick="add_member_editor.testmsg('accountId')"><span>确认(是/否)</span></a>
但我在使用的时候发现部分问题.这个框架会先加载全部使用的到js,然后每次与服务端的请求都使用ajax进行.然后入到当前页面的代码里.
但是问题来了.每次加载的页面里多多少少都会有一些专用的js函数.如:
访问A页面时,有一个testmsg()的函数,然后我再加载访问B页面,里面也有一个testmsg()函数.
如果再访问A页面并触发testmsg()函数.注意这里触发的实际上是B页面的testmsg()函数.因为只有一个页面的关系所有直接定义的函数都系属于window类下的函数.
这里只是一个简单的例子,如果没有相关的规定.很容易在开发的时候造成错误.
所以我建议所有使用dwz的开发者,在每个页面中写js必须增加多一层如:
<script type="text/javascript">
var add_member_editor ={
testmsg:function(accountId){
alertMsg.confirm("您修改的资料未保存,请选择保存或取消!", {
okCall: function(){
$.post("ajaxDone.html", {accountId: accountId}, ajaxDone, "json");
}
});
}
};
</script>
调用的时候使用
<a class="button" href="javascript:;" onclick="add_member_editor.testmsg('accountId')"><span>确认(是/否)</span></a>
[emot]stupid[/emot]