从代码隐藏,错误传递参数到javascript函数

时间:2011-10-15 16:21:34

标签: c# javascript asp.net argument-passing

代码背后的

    string func = "showSuccessMessage("+name+");";
    ClientScript.RegisterStartupScript(this.GetType(), "success", func, true);

在js文件中:

   function showSuccessMessage(user)
   {
        $("#box").dialog({
            title:"User Registration",
            html: user.toString() + " Successfully Registered", 
            modal: true,
            buttons: {
                   Ok: function () {
                    $(this).dialog("close");
                    var s = "../Pages/main.aspx";                
                    window.location = s;
                   }
        }
   });
 } // end function 

当我尝试传递没有参数的func字符串时,每件事情都很好

当我尝试将参数附加到函数字符串中时,我从浏览器中得到错误

未捕获的ReferenceError:未定义john

(约翰是名字的价值) 现在我猜测问题的出现是因为函数注册的方式无法区分变量和值,所以它是一个未定义的类型john

所以问题就在于:

如何从代码隐藏

向javascript函数发送参数 提前谢谢 叶兰。

btw类似的问题: 显示类似于iv'e尝试的东西

similar question

1 个答案:

答案 0 :(得分:2)

你写它的方式,就像传递john作为变量,而不是字符串。这就像调用

showSuccessMessage(john); // what you're doing in js
showSuccessMessage('john'); // what you need

使用

更正
string func = "showSuccessMessage('"+name+"');";