Как при смене значения одного поля передать значение другого поля?
Есть следующая конструкция, прикрученная к одному из полей формы:
onChange="submitForm(this.value, another.value) Параметр this.value передаёт значение поля, после его изменения, а вот как передать "another.value"? Пробовал document.form.field_name.value - приходит undefined. Пробовал просто field_name.value - тоже самое. Как передать из формы текущее значение одного из её полей при смене другого поля? P.S. Разумеется form и field_name соответствуют названию формы и названию соответствующего поля. |
javascript_pupil,
this.form.field_name.value |
Получилось, спасибо! Только я не понял, почему this.form.field_name.value работает, а если заменить "form" на реальное имя формы, то не работает?
|
javascript_pupil,
:-? <!DOCTYPE HTML> <html> <head> <title>Untitled</title> </head> <body> <form action="http://" name="test"> <input name="bumbum" type="radio" value="5"> <input name="bumbum" type="radio" value="15" checked="checked"> <input name="field_name"><input name="" onChange="alert([this.value, document.test.field_name.value, document.querySelector('[name=\'bumbum\']:checked').value])" > </form> </body> </html> |
Спасибо! Теперь ясно: либо this.form либо document.formname.
Теперь пытаюсь передавать значение radio поля - опять не передаётся, хотя все input type=text работают. |
Поясню задачу. Нашел несколько примеров, когда значения радио-кнопки определяются в дополнительной функции. Но мне каким-то образом надо сделать, чтобы всё это было в одной строке, которая должна жить в onChange, как в первом примере и как в сообщении № 4.
|
javascript_pupil,
вы похоже ... маитесь. смотрите 4 пост. |
Очень интересный вопрос возник: как эту прелесть:
document.querySelector('[name=\'bumbum\']:checked').value]) вставить внутрь ещё одних одинарных кавычек? Например сюда: insertAdjacentHTML('beforeEnd','<input type="text" name="field_name" value="" onChange="alert([this.value, document.querySelector('[name=\'lalala\']:checked').value]')">');Приведённый пример разумеется не работает. Непонятно как экранировать одинарные кавычки внутри одинарных кавычек. Каламбурчик получился смешной, но непонятный. |
javascript_pupil,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> </head> <body> <form action="http://" name="test" id="test"> <input name="bumbum" type="radio" value="5"> <input name="bumbum" type="radio" value="15" checked="checked"> </form> <script> test.insertAdjacentHTML('beforeEnd','<input type="text" name="field_name" value="" onChange="alert([this.value, document.querySelector(\'[name=bumbum]:checked\').value])" >'); </script> </body> </html> |
рони, не знал, что так просто. Спасибо! А это по канонам? Если да, то зачем ставили одинарные кавычки до этого? Моя запуталась.
|
Часовой пояс GMT +3, время: 02:01. |