checkbox проверка нажатия
Есть форма в нее выводятся список checkbox
хочу проверить каких из них нажаты и результат поместить в div дулею следующие <form id="zxc" name="zxc"> тут список чебоксов </form> <script> function er() { var str = $("form").serialize(); $("#results6").text(str); } $(":checkbox, :radio").click(er); er(); </script> <div id="results6"></div> помещать то он помещает только не значения этой формы а совсем другой которая находиться выше этой... как обратиться скриптом по id Делаю так не работает <script> function er() { var str = $("#zxc").serialize(); $("#results6").text(str); } $(":checkbox, :radio").click(er); er(); </script> |
Всё работает
<script src="http://code.jquery.com/jquery-1.6.2.min.js"></script> <form>lalala</form> <form id="zxc" name="zxc"> <input type="checkbox" name="ch1" value="lalala1" checked /> <input type="checkbox" name="ch2" value="lalala2" checked /> <input type="checkbox" name="ch3" value="lalala3" /> <input type="checkbox" name="ch4" value="lalala4" /> <input type="checkbox" name="ch5" value="lalala5" checked /> </form> <div id="results6"></div> <script> function er() { var str = $("#zxc").serialize(); $("#results6").text(str); } $(":checkbox, :radio").click(er); er(); </script> |
Спасибо, да сделал на отдельной страничке .... все работает
а вот на моей основной нет , наверное дело в том что я вывожу список чебоксов из массива циклом html = ''; for(var i = 0; i < data.length; ++i) { var rty = data[i]['id_user'] + '\n'; var name = data[i]['name'] + '\n'; var fam = data[i]['fam'] + '\n'; var otch = data[i]['otch'] + '\n'; zxc.innerHTML +=fam+name+otch+'<input name="" type="checkbox" value="'+rty+'"/><br>' } <form id="zxc" name="zxc"> </form> <div id="results6"></div> <script> function er() { var str = $("#zxc").serialize(); $("#results6").text(str); } $(":checkbox, :radio").click(er); er(); </script> Хотя по идеи должно же работать |
> а вот на моей основной нет , наверное дело в том что я вывожу список чебоксов из массива циклом
Да, проблема вполне может быть в этом. Если код вынесен в отдельный скрипт, то на тестовой страничке этот код будет успевать загружаться перед кодом, вставленным жестко, а на тяжёлой боевой странице код будет загружаться позже. Можно попробовать отложить выполнение er до события ready jquery |
Цитата:
|
Подскажите а на что накладывать событие ready .... я что ни могу понять на функцию вроде не логично, на форму еще более не логично
|
Может быть так ???
<script> jQuery(document).ready(function er(){ var str = $("#zxc").serialize(); $("#results6").text(str); }); $(":checkbox, :radio").click(er); er(); </script> Я правильно двигаюсь или совсем не правильно ? |
Sadist_dead, 50/50. Идея использовать document ready верная, но текущая реализация никуда не годится.
|
Спасибо думаю...
Цитата:
|
Может быть так ???№2
<script> jQuery(document).ready(function xox(){ function er(){ var str = $("#zxc").serialize(); $("#results6").text(str); }; $(":checkbox, :radio").click(er); er(); }); </script> как я понимаю что когда dom загружен и функция xox( которая формирует список чебоксов ) то выполнять функцию er или имеется ввиду что когда дом загружен выполнять функцию er и функция xox вообще не причем ? ведь она же формирует dom тогда скорее не причем, но я тогда не могу понять почему предыдущий вариант был не правилен ? |
Часовой пояс GMT +3, время: 04:39. |