Синтаксическая ошибка JavaScript при передаче параметров в функцию - PullRequest
0 голосов
/ 28 декабря 2011

Я не уверен, как закодировать это, поскольку я могу работать на стороне сервера рендеринга по сравнению с клиентской стороны.Прошло много времени с тех пор, как я сделал что-то подобное, поэтому ваш ввод очень полезен.

Я использую модальный всплывающий расширитель для отображения сообщения, которое извлекается из базы данных и отображается в метке внутри gridview.Моя идея заключалась в том, чтобы использовать функцию JavaScript, которая отвечает за показ модального всплывающего окна.Первоначальный метод состоял в том, чтобы отправить в функцию два параметра, один из которых был ключевым словом this, а другой - само сообщение, которое было обработано .net <% # Eval ("Message")%>.Это, однако, доставило мне все виды синтаксических проблем.Это должно было быть так же просто, как OnClientClick='showComfirm(this, <%# Eval("Message") %>); return false;', но не так.

Тогда я подумал, что могу просто использовать document.getElementById(ct100_ContentsPlaceholder1_hEmailMessage).value.Это работает, а что нет, назначая значение метки во всплывающем окне.Вот некоторый код:

function displayInfo(source, message){
   this._source = source;
   var emailBody = document.getElementById("ct100_ContentsPlaceholder1_hEmailMessage).value;
   document.getElementById("ct100_ContentsPlaceholder1_lblPopUpMessage").value = emailBody; // This is where I'm trying to assing text property.
   this._popup - $find('mdlPopup'); 
   this._popup.show();
}

Параметр "message" - это то, что я описал сверху в качестве моего первоначального метода, который я все еще хотел бы заставить его работать.

В любом случае, многообъяснения, но хотелось бы, чтобы вы указали, почему я получаю синтаксическую ошибку в моей первоначальной попытке, а также почему я не могу присвоить значение свойству text свойства lblPopUpMessage.

Спасибо, Risho

ОБНОВЛЕНИЕ

Ошибки JavaScript, которые я получал, были связаны с текстом, который содержит переменное «сообщение».Varialbe содержит простой текст на английском языке, такой как сообщение электронной почты, с прописными буквами, строчными буквами, восклицательными знаками, запятыми, точками, апострофиями, двойными кавычками, пробелом и т. Д. Откуда я знаю это?Я удалил весь текст, за исключением одного случайного слова в ячейке сообщения в базе данных, и ошибки исчезли.Тем не менее не может отобразить единственное рабочее сообщение, хотя.

Так есть ли обходной путь для этого?

Спасибо, Р.

1 Ответ

0 голосов
/ 28 декабря 2011

Вы копируете + вставляете код?Если это так, вы получили синтаксическую ошибку.Это хороший код:

   function displayInfo(source, message){
       this._source = source;
       var emailBody = document.getElementById("ct100_ContentsPlaceholder1_hEmailMessage").value;
   document.getElementById("ct100_ContentsPlaceholder1_lblPopUpMessage").value = emailBody;
   this._popup - $find('mdlPopup'); 
   this._popup.show();
}
...