передача аргументов в функцию javascript из кода, ошибка - PullRequest
1 голос
/ 15 октября 2011

в коде позади:

    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 без аргументов, все работает нормально

когда я пытаюсь добавить аргумент в строку функции, я получаю сообщение об ошибке из браузера

Uncaught ReferenceError: john не определен

(Джон является значением имени) теперь я предполагаю, что проблема возникает из-за того, что способ регистрации функции не может различить переменную и значение, поэтому это неопределенный тип john

так что вопрос стоит:

как можно посылать аргументы в функцию javascript из выделенного кода

спасибо заранее Эран.

кстати похожий вопрос: показывая что-то похожее на то, что я пытался сделать * *

аналогичный вопрос

1 Ответ

2 голосов
/ 15 октября 2011

То, как вы пишете, это все равно, что передавать john как переменную, а не строку. Это похоже на призыв

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

Исправьте это с помощью

string func = "showSuccessMessage('"+name+"');"; 
...