Указание ссылки на функцию с параметрами
Извините, может глупый вопрос задаю, но не могу найти решение, уже не одну статью прочитал (.
В статье http://javascript.ru/tutorial/events/intro НАПИСАНО: Как мне правильно указать ссылку на функцию и сразу же указать какие будут значения параметра/-ов function doSomething(a) { alert(a) } document.getElementById('button').onclick = doSomething Как тут указать a='Спасибо' ???? Чтобы результат (после клика) был таким же? Спасибо )! |
user_i,
Вариант ... <!DOCTYPE html> <html > <head> <title></title> </head> <body> <input type="button" name="go" value="go" id="button" /> <script type="text/javascript"> function doSomething(a) { return function () { alert(a) } } document.getElementById('button').onclick = doSomething('Спасибо') </script> </body> </html> |
user_i,
или так... <!DOCTYPE html> <html > <head> <title></title> </head> <body> <input type="button" name="go" value="go" id="button" /> <script type="text/javascript"> function doSomething(a) { alert(a) } document.getElementById('button').onclick = function () { doSomething('Спасибо') } </script> </body> </html> |
рони, благодарю! Первый вариант не подходит так-как функция массивная+ используется несколько раз. Второй вариант почему-то не срабатывает.
Где использую: Event.add(element, 'blur', "function() {validate('<?=$val_group_name?>')}"); function validate(val_group_name) {...} Какую ошибку выдает: Object function() {validate('registration')} has no method 'call' |
Да, убрал кавычки. Помогло!
Event.add(element, 'blur', function() {validate('<?=$val_group_name?>')}); |
Цитата:
Как при создании ссылки передать переменную из JS в функцию??? Используя php вот так работает: Event.add(element, 'blur', function() {validate('<?=$val_group_name?>')}); А на JS? Оптимальнее в этом случае без PHP, чтобы ввывести в js файл... Так работает: Event.add(element, 'blur', function() {validate("value")}); Но нужно что-то вроде var val_group_name = "value"; Event.add(element, 'blur', function() {validate(val_group_name)}); А не проходит:nono: Или так var val_group_name = "value"; Event.add(element, 'blur', function(val_group_name) {validate(val_group_name)}); А не проходит:nono: |
Часовой пояс GMT +3, время: 08:10. |