привязать 2 обработчика к одной кнопке
Здравствуйте, товарищи:)
Выполняя доработку системы (JavaScript, PHP) зависла на следующей задаче: на странице имеется 2 независимых формы (условно форма 1 и форма 2), у каждой несколько полей ввода. Если активна форма 1, заблокирована форма 2 (и наоборот). После ввода всех данных в поля формы 1 происходит их отправка на сервер по нажатию кнопки (также и для второй формы, в зависимости от того, какую используем). Итак, проблема: кнопка отправки для обоих форм одна и та же. Как корректно задать обработчик для кнопки в зависимости от того, какая форма используется? ********************* var m_grid1=new TTgrid(3,4); //Формирующая сетка var m_grid2=new TTgrid(3,4); ... //форма 1. var year=new TTselect(new Array({"caption":"Выбрать год","val":""}),170); var fk=new TTselect(new Array({"caption":"Выбрать факультет","val":""}),170); ... //форма 2. var od=new TTselect(new Array({"caption":"Выбрать отдел","val":""}),170); ... m_grid1.append_to(...); m_grid2.append_to(...); ... //описание кнопки, по нажатию которой будем загружать данные на сервер var go_btn=new TTimgbutton("<br>Загрузить","./img/button/go.png",false,btn_size,btn_size); go_btn.append($("#tools")[0]); function load_TT() {... } //функция загрузки данных, полученных из формы 1 на сервер function load_TT_od() {... } //функция загрузки данных, пщлученных из формы 2 на сервер //вот здесь нужно как-то выбрать, какую функцию использовать, load_TT или load_TT_od (в зависимости от того, какая форма //активна). пример моего решения if (year.get_val()>0||fk.get_val()>0) //eсли в форме 1 что-то есть { go_btn.add_click(load_TT); } //привязываем к кнопке обработчик 1 else if (od.get_val()>0) //если в форме 2 что-то есть { go_btn.add_click(load_TT_od); } //привязываем к кнопке обработчик 2 Очевидно, что работать в таком виде не будет, потому что в начале, при загрузке основной страницы в полях каждой из форм пусто, т.е ни одно из условий не выполнится. Возможно, нужно в процессе ввода данных в форму каким-то образом общаться с сервером, что данные введены. (PHP, Ajax) Подскажите пожалуйста, как осуществить задуманное, какие ср-ва и функции использовать. |
Цитата:
|
Проблема решена.
|
Часовой пояс GMT +3, время: 13:48. |