JQuery представленные значения для флажков не определены - PullRequest
2 голосов
/ 19 мая 2009

Я только что получил действительно большую помощь сегодня с предыдущей проблемой jQuery и подумал, так как моя удача закончилась, возможно, я мог бы также получить некоторую помощь с некоторыми флажками. Может кто-нибудь сказать, пожалуйста, что я делаю не так?

Спасибо!

Флажки правильно отображают значения bool базы данных, но когда я отправляю измененные значения, alert () сообщает мне, что они не определены.

        else if (item.field == "admCustRptDly" && item.value == "1")
        {
          $('#admCustRptDly').attr('checked', true);
        }

        else if (item.field == "admCustRptSumm" && item.value == "1")
        {
          $('#admCustRptSumm').attr('checked', true);
        }

        else if (item.field == "admCustRptDtl" && item.value == "1")
        {
          $('#admCustRptDtl').attr('checked', true);
        }

<tr>
    <td class="admMarker">Daily<input type="checkbox" id="admCustRptDly" name="admCustRptDly" class="admChkbx"></td>
    <td class="admMarker">Summary<input type="checkbox" id="admCustRptSumm" name="admCustRptSumm" class="admChkbx"></td>
    <td class="admMarker">Detail<input type="checkbox" id="admCustRptDtl" name="admCustRptDtl" class="admChkbx"></td>
</tr>

$(function() {   $('.error').hide();
    $('input.text-input').css({backgroundColor:"#FFFFFF"});
    $('input.text-input').focus(function(){
        $(this).css({backgroundColor:"#FFDDAA"});
    });  
    $('input.text-input').blur(function(){
        $(this).css({backgroundColor:"#FFFFFF"});
    });

      $(".admCustBtn").click(function()
    {       // validate and process form
            // first hide any error messages
        $('.error').hide();



          var admCustRPSecPhone =
    $("input#admCustRPSecPhone").val();
          var admCustRptDly =
    $("checkbox#admCustRptDly").val();  
    var admCustRptSumm =
    $("checkbox#admCustRptSumm").val();
          var admCustRptDtl =
    $("checkbox#admCustRptDtl").val();

            var dataString =
        'admCustID='+ admCustID +
        '&admCustRptDly='+ admCustRptDly +
        '&admCustRptSumm='+ admCustRptSumm +
        '&admCustRptDtl='+ admCustRptDtl;

            alert (dataString);return false;

            $.ajax({
          type: "POST",
          url: "body.php?action=admCustomer",
          data: dataString,
          success: function(){
            alert( "Success! Data Saved");
          }
         });
        return false;   }); });

Ответы [ 4 ]

1 голос
/ 11 февраля 2011

Извините, в моем случае это был .attr () - у меня отлично работает, даже в Adobe Air.

jQuery('#mycheckbox').attr( "checked" )
1 голос
/ 19 мая 2009

На самом деле оба ..

флажки не имеют значения, поэтому, если вы попытаетесь предупредить () их значения, это приведет к значению "undefined", но если вы столкнетесь с этим при предупреждении самого флажка, вы, вероятно, делаете что-то неправильно.

Установка их значений в true не приведет ни к чему, как сказал @Soviut, большинство свойств повторяют свои имена при установке. Таким образом, ваш вклад будет выглядеть так:

<input type="checkbox" checked="checked" value="1" name="myCheck" />

Итак, попробуйте выше и дайте нам обратную связь = ´p

0 голосов
/ 19 мая 2009

Ваши селекторы для флажков неверны.

  var admCustRPSecPhone = $("input#admCustRPSecPhone:checked").val() == 'on';
  var admCustRptDly = $("input#admCustRptDly:checked").val() == 'on';  
  var admCustRptSumm = $("input#admCustRptSumm:checked").val() == 'on';
  var admCustRptDtl = $("input#admCustRptDtl:checked").val() == 'on';

Вы также можете использовать что-то вроде:

  var admCustRptDly = $("#admCustRptDly:checkbox:checked").val() == 'on';

Это установит значения true / false в зависимости от того, установлен флажок или нет.

0 голосов
/ 19 мая 2009

В элементе ввода HTML не задан атрибут значения

<input type="checkbox" value="1" id="admCustRptDly" name="admCustRptDly">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...