Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: xAJAX. Radio-button.
Форумы портала PHP.SU » PHP » Программирование на PHP » xAJAX. Radio-button.

Страниц (1): [1]
 

1. LukS - 06 Января, 2008 - 16:08:44 - перейти к сообщению
Познаю xAJAX. Тут возник вопрос: вот мой код html:
PHP:
скопировать код в буфер обмена
  1. <input type=text name=num1 id=num1> *act* <input type=text name=num2 id=num2> = <input type=text name=result id=result readonly>
  2. <p><input type="radio" id="action" value="+" name="action">+
  3. <input type="radio" id="action" checked value="-" name="action">-
  4. <input type="radio" id="action" value="/" name="action">/
  5. <input type="radio" id="action" value="*" name="action">*</p>
  6. <input type="submit" onclick="xajax_calc(document.getElementById('num1').value,document.getElementById('num2').value,document.getElementById('action').value);return false;" value="Calculate">
  7.  

Собственно, то что надо я получаю. Но в переменную $action у меня всё время получается значение +. Хотя я выбираю совершенно другое значение. Вот обработчик: (Только для радио-кнопки)
PHP:
скопировать код в буфер обмена
  1.  
  2. function calc($num1, $num2, $action)
  3. {
  4.         $objResponse = new xajaxResponse();
  5.                 $objResponse->addAssign("result", "value", $action);
  6.         return $objResponse;
  7. }
  8.  

В итоге в форме result у меня получается значение + всегда... При попытке поменять на другую кнопку всеравно получается +, даже когда я выбираю -, +, /, *.
Версия xAJAX: 0.24
Хелп ме.
2. evgenijj - 06 Января, 2008 - 16:26:25 - перейти к сообщению
Думаю, это потому, что у тебя несколко элементов в документе с одинаковым ID. ID уникален в пределах html-страницы
document.getElementById('action').value

< input type="radio" value="+" name="action">+
< input type="radio" checked value="-" name="action">-
< input type="radio" value="/" name="action">/
< input type="radio" value="*" name="action">*
document.forms['myform'].elements['action'].value
3. LukS - 06 Января, 2008 - 16:32:35 - перейти к сообщению
evgenijj пишет:
Думаю, это потому, что у тебя несколко элементов в документе с одинаковым ID. ID уникален в пределах html-страницы
document.getElementById('action').value

< input type="radio" value="+" name="action">+
< input type="radio" checked value="-" name="action">-
< input type="radio" value="/" name="action">/
< input type="radio" value="*" name="action">*
document.forms['myform'].elements['action'].value

Что-то я не понял. А куда document.forms['myform'].elements['action'].value вписывать? Я просто Js не знаю Огорчение
4. evgenijj - 06 Января, 2008 - 16:50:27 - перейти к сообщению
Но читать-то ты умеешь? Заменить
document.getElementById('action').value
на
document.forms['myform'].elements['action'].value
в состоянии? И убрать атрибут id="action" из элементов input type="radio"
Разумеется, вместо myform надо написать имя твоей формы (атрибут name тега form)

Цитата:
Я просто Js не знаю

Как же ты AJAX осваивать собираешься?
5. LukS - 06 Января, 2008 - 17:07:48 - перейти к сообщению
evgenijj пишет:
Но читать-то ты умеешь? Заменить
document.getElementById('action').value
на
document.forms['myform'].elements['action'].value
в состоянии? И убрать атрибут id="action" из элементов input type="radio"
Разумеется, вместо myform надо написать имя твоей формы (атрибут name тега form)

Цитата:
Я просто Js не знаю

Как же ты AJAX осваивать собираешься?

В xAJAX знание js не нужно практически. Главное, что я хоть алерт могу на js сделать. Js похож на PHP по синтаксису. Замена не помогла. Форме дал имя myform, тоже не помогло. id у радио-полей убрал. Тоже не помогло. Перерыл библиотеку аякса. Тоже не помогло Не понял.
6. evgenijj - 06 Января, 2008 - 18:36:02 - перейти к сообщению
Тогда выкладывай все исходные коды - будем смотреть, что там не так...
7. LukS - 06 Января, 2008 - 20:04:13 - перейти к сообщению
Вот выкладываю. Только замените там инклуд на библиотеку.
8. evgenijj - 06 Января, 2008 - 22:36:19 - перейти к сообщению
http://forum[dot]webmasterschool[dot]ru/[dot][dot][dot]&id_theme=83
9. LukS - 06 Января, 2008 - 22:41:46 - перейти к сообщению
Хм... Большое спасибо.
Теперь ваш копирайт будет в каждом ajax скрипте Улыбка

 

Powered by ExBB FM 1.0 RC1