Передача объекта как параметра в функцию
Подскажите, пожалуйста: у меня есть кнопка, которую я динамически добавляю на форму
kn = '<button onClick="respUser( ' + prods + ' )">Да</button>'; Тип переменной prods - объект. При попытке передать prods в функцию respUser в качестве параметра получаю ошибку: SyntaxError: Unexpected identifier. В чем причина ? |
TomTykver,
kn = '<button onClick="respUser(prods)">Да</button>'; |
Получаю ошибку: prods is not defined
Перед инициализацией kn ставлю console.log( prods ); - все ОК |
typeof prods - object
|
TomTykver,
значит там где запускается клик невидно эту переменную. может не использовать атрибут onClick проще будет? |
Подскажите, как лучше. Мне нужно при нажатии на кнопку обработать данные. Я уже сделал все это, но через глобальную переменную, а это не правильный поход
|
:-) подход
|
TomTykver,вам же написали не используйте атрибут для назначения функции обработки события click и не нужны будут глобальные переменные.
|
вроде разобрался: утро вечера мудрее. Спасибо, рони.
|
TomTykver,
на всякий случай, раз вы задали вопрос в разделе jquery <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script> $(function() { var prods = { a: 1 }; function respUser(a) { alert(a.a); } var kn = $("<button/>", { text: "Да", click: function() { respUser(prods) } }); $("body").append(kn) }) </script> </head> <body> </body> </html> |
Часовой пояс GMT +3, время: 02:05. |