Javascript Jquery在函数之间传递参数
嘿,我想从jquery中的函数传递一个参数,但我无法让它工作。我做错了什么?我希望将“name”从单击函数传递到对话框块函数,以防止代码重复 更新:我在函数后定义了名称。但是我还是不能这样通过 更新2jsiddle链接Javascript Jquery在函数之间传递参数,javascript,jquery,html,css,Javascript,Jquery,Html,Css,嘿,我想从jquery中的函数传递一个参数,但我无法让它工作。我做错了什么?我希望将“name”从单击函数传递到对话框块函数,以防止代码重复 更新:我在函数后定义了名称。但是我还是不能这样通过 更新2jsiddle链接 好友列表: 好友列表: //jQuery文档就绪处理程序 $(函数(){ 变量名; //创建我们的对话 $(“#对话框块”)。对话框({ 标题:“”, 自动打开:错误, 宽度:400, 按钮:{ “关闭”:函数(){ closeDialog($(此)) } } });
好友列表:
好友列表:
//jQuery文档就绪处理程序
$(函数(){
变量名;
//创建我们的对话
$(“#对话框块”)。对话框({
标题:“”,
自动打开:错误,
宽度:400,
按钮:{
“关闭”:函数(){
closeDialog($(此))
}
}
});
//打开对话框的按钮
$('#user0chair,#apDiv1')。单击(函数(事件){
如果(this.id==“user0chair”){
$('#对话框块')。对话框('打开');
name=1;
}
else if(this.id==“user1chair”){
$('#对话框块')。对话框('打开');
}
});
});
函数关闭对话框(elem){
元素对话框(“关闭”);
}
由于未能使用var
关键字定义name
,因此页面上的任何其他代码都可以访问该关键字
除此特殊情况外,变量具有函数作用域,因此在高于需要访问它的两个函数的级别上定义一个var name…
就在那之后
$(function () {
放
var名称代码>
说明:
在全局范围内创建变量,然后我们从一个函数中分配它,它可以从外部访问
您正在将变量包装为文本!有了qouts,这意味着这是一些文本,而不是一个变量,您应该将该行更改为标题:
'<%=GetUserName(' + name + ')%>'
“”
这一行的意思是将引号之间的任何东西作为文本处理,当你开始命名时,只需获取它的值并将其附加到文本中,然后完成文本
编辑:在这里等一下,您不能将javascript变量传递给服务器端的函数,除了通过ajax,但不是这样。。您应该使用post或get将其发送到服务器,然后从那里对其进行绘图,然后启动函数并返回结果 很难理解代码的意图。也许你可以上传一个副本到jsfiddle.net,我们可以试试看它能做什么?把用关键字var
定义变量作为你的好习惯。。然后把它放在窗口就绪函数的后面,这是JSDFIDLE链接,您正在将变量包装为文本!有了qouts,这意味着这是一些文本,而不是一个变量,您应该将该行更改为标题:'',我的答案也已更新,将服务器代码与javascript混合使用,许多混淆将消失。它们不是在同一个环境中运行,也不是在同一时间运行,只是一个问题。。函数中声明的变量是否仅在该范围内工作?!!如果你不是在V8的严格模式下(在这种模式下你会得到一个错误),给一个未定义的变量赋值(没有var关键字)会把它放入全局对象中;e、 g.闭包(从子函数访问父函数中的变量)谢谢mate!但是再一次确认信息,如果我没有用var声明变量,那么它就不会被限定在我的函数范围内?!(通常)是的,但您应该始终使用var。隐式定义的全局变量被认为是不好的做法。您应该始终尽可能明确地表达您的意图,以便其他人,甚至您,能够阅读并理解您的代码。
'<%=GetUserName(' + name + ')%>'