0

クリック時に別の名前と値で chkbox を作成しようとしており、その値を警告するとエラー「NaN」が発生します 私のスクリプトはここにあります

<script type="text/javascript">
var k=0,j=0;
    $(document).ready(function () {
        $("#btnAdd").click(function () {
            var field = $("#field").val();
         k+=1;
            var newRow1="<tr><td align='center' style='font-size: large; color: #212121;' height='35px'>from"
            +DDL_fromProfession +" to "+DDL_ToProfession +"</td></tr>"
            +"<tr><td align='center' style='font-size:large;color:#212121;' height'35px'>"
            +"<input type='checkbox' name='chkbx_CurrPro'"+k+"'' value='"+k+"'>I currently work here</input>";
            alert(k);
            var chkvalue = parseInt($(":checkbox[name='chkbx_CurrPro'"+k+"'']").val()) + 1;
            alert(chkvalue);                
            var checkBoxes = $("input[name=" + chkbx_CurrPro + "]");
              $.each(checkBoxes, function() {
            if ($(this).attr('checked')){
                //do stuff
            }
            });                        
            var input = "<input name='parameters' id='field' type='text' />";
            var input1="<input name='parametersCompany' id='field' type='text'/>"
            var newRow = "<tr><td align='center' style='font-size: x-large; color: #212121;' height='35px'>" 
            + input + " at " +input1 +"</td></tr>";
            $('#controls').append(newRow);
            $('#controls').append(newRow1);
        });
    });
</script>

chkbox を作成したいのですが、

name = chkbx_CurrPro0 , value = 0
name = chkbx_CurrPro1 , value = 1
name = chkbx_CurrPro2 , value = 2
             .
             .
             .

次に、その値を出力して NaN エラーが発生しますか?? dynamicaally chkbox を作成した後、マークされた chk box のみの値を取得します。

ここに私のコード、

  var checkBoxes = $("input[name=" + chkbx_CurrPro + "]");
                  $.each(checkBoxes, function() {
                if ($(this).attr('checked')){
                    //do stuff
                }
                }); 

ただし、実行時に作成されたすべてのチェックボックスを確認してください

提案の希望

ありがとう

4

1 に答える 1

0
        var chkvalue = parseInt($(":checkbox[name='chkbx_CurrPro'"+k+"'']").val()) + 1;

ここでの引用にはいくつかの問題があると思います。これを試して...

        var chkvalue = parseInt($(":checkbox[name='chkbx_CurrPro"+k+"']").val()) + 1;

編集:ここで同じ問題があるようです...

"<input type='checkbox' name='chkbx_CurrPro'"+k+"'' value='"+k+"'>

これは chkbx_CurrPro'1' という名前を作ろうとしますが、それは有効ではありません。これは代わりに...

"<input type='checkbox' name='chkbx_CurrPro"+k+"' value='"+k+"'>

再度編集: ここに別の問題があります。チェックボックスが実際に dom に追加される前に、チェックボックスの値を取得しようとしています。これを文字列に追加しましたが、それは parseInt を呼び出したときのテキストの文字列であり、ページの一部ではありません。parseInt 行を追加行の下、下部近くに移動します。

于 2013-01-31T07:12:38.280 に答える