Не отрабатывает отправку post при снятие галочки
:help:
Всем привет. Т.к. не силен в javascript и jquery, прошу помочь. Есть код, который должен отправлять значение checkbox по средствам post при установке или снятие галки, но он работает только при установке, причем алерт выводит все нормально в любом случае т.е. true или false. $(document).ready(function() { $('.do-block input[type="checkbox"]').click(function(){ $(this).closest('tr').toggleClass('done'); var lol=$(this).prop('checked'); $('#loader').html('<img src="loading.gif" border="0" alt="loader"/>'); var dataString = "&ck=" + lol; // формируем строку запроса по типу GET $.ajax({ type: "POST", url: "do.php", data: dataString, cache: false, success: function(html){ setTimeout("$(\"#loader\").html('');",2); } }) alert(lol); }); $('.do-block input[type="checkbox"]:checked').closest('tr').addClass('done'); }); |
Доброй ночи. Воссоздавать ваш код было лениво, поэтому набросал свое прямо в firebug-е. В принципе, думаю у вас не займет много времени видоизменить его.
function myAction() { var status = $(this).prop('checked'); $('#result_input').attr('value', status); alert(status); } $(document).ready(function(){ // эти строки вам не нужны, тут я просто создал нужные элементы на странице $("body").empty(); $("body").html('<input id="bind_input" type="checkbox" />'); $("body").append('<input id="result_input" type="text" value="" />'); // вот тут вешаем обработчик события $('#bind_input').on('change', myAction); }); У меня этот код работает и при добавлении и при снятии галочки. И это, еще. 1. Старайтесь не использовать бессмысленные имена переменных, вроде вашей lol. Бог с ним с примером кода, но увидеть подобное в рабочем коде бывает крайне не приятно. 2. Зачем вам передавать постом строку а-ля гет???? Если уж так хочется отправить все одной строкой - передайте json-объект. С ним и проще и удобнее и не говнокод. |
Часовой пояс GMT +3, время: 17:32. |