0

私のMVC3カミソリページで、ボタンをクリックしてテキストボックスを動的に追加しようとしています

以下に貼り付けたのは私のJqueryです。しかし、addButtonをクリックすると、上記のエラーメッセージが表示されます。

このエラーを解決するために追加しようとしまし <script type="text/javascript" src="jquery-1.3.2.min.js"></script> たが、それでも同じエラーが発生します。このエラーを解決するための提案をお待ちしております。

<script type="text/javascript">



    $(document).ready(function(){



        var counter = 2;



        $("#addButton").click(function () {



            if(counter>10){

                alert("Only 10 textboxes allow");

                return false;

            }   



            var newTextBoxDiv = $(document.createElement('div')).attr("id", 'TextBoxDiv' + counter);

                newTextBoxDiv.after().html('<label>Textbox #'+ counter + ' : </label>' +

                '<input type="text" name="textbox' + counter + 

                '" id="textbox' + counter + '" value="" >');



            newTextBoxDiv.appendTo("#TextBoxesGroup");



            counter++;

        });



        $("#removeButton").click(function () {

            if(counter==1){

                alert("No more textbox to remove");

                return false;

            }   

            counter--;



            $("#TextBoxDiv" + counter).remove();

        });



        $("#getButtonValue").click(function () {



            var msg = '';

            for(i=1; i<counter; i++){

                msg += "\n Textbox #" + i + " : " + $('#textbox' + i).val();

            }

            alert(msg);

        });



  });

</script>

ここに画像の説明を入力

4

2 に答える 2

2

これはかなり明白に思えます。コンテンツなしで呼び出すとafter()、何も作成されません。何も取得しようとするとhtml()... 何も取得しません。

after() ドキュメントを参照してください。

于 2012-07-25T18:40:05.587 に答える
0

ネイティブ DOM と jquery を混同するのではなく、ずっと jquery を使用したい場合があります。これは実際に機能します:

var newTextBoxDiv = $('<div id="TextBoxDiv' + counter + '"><label>Textbox #'+ counter + ' : </label><input type="text" name="textbox' + counter + '" id="textbox' + counter + '" value="" ></div>'); 
于 2012-07-25T18:50:03.917 に答える