2012-02-16 16 views
1

私はzendフォームを作成し、そこに動的テキストボックスを追加します。
javascriptを使用して作成しました。
フォームの送信時には、最後に作成されたテキストボックスのデータのみが転記されます。
助けてください。動的テキストボックス(Zendフォーム)

<script type="text/javascript"> 
    var count1 = 0; 
    var count2 = 0; 
    var count3 = 0; 
    var count4 = 0; 
    var count5 = 0; 
    var count6 = 0; 
    $('#addone').click(function() { 
     $('#link-element').append($('<input id="link" class="link" type="text" name="link"/>').hide().slideDown(100)); 
     count1++; 
    }); 
    $('#addtwo').click(function() { 
     $('#youtube-element').append($('<input id="yahoo'+count2+'" class="link" type="text" name="yahoo"/>').hide().slideDown(100)); 
     count2++; 
    }); 
    $('#addthree').click(function() { 
     $('#gamepuzzle-element').append($('<input id="gamepuzzle'+count3+'" class="link" type="text" name="gamepuzzle"/>').hide().slideDown(100)); 
     count3++; 
    }); 
    $('#addfour').click(function() { 
     $('#flashgame-element').append($('<input id="flashgame'+count4+'" class="link" type="text" name="flashgame"/>').hide().slideDown(100)); 
     count4++; 
    }); 
    $('#addfive').click(function() { 
     $('#moketest-element').append($('<input id="moketest'+count5+'" class="link" type="text" name="moketest"/>').hide().slideDown(100)); 
     count5++; 
    }); 
    $('#addsix').click(function() { 
     $('#indigenousintegration-element').append($('<input id="indigenousintegration'+count6+'" class="link" type="text" name="indigenousintegration"/>').hide().slideDown(100)); 
     count6++; 
    }); 
</script> 

答えて

1

フォーム入力を配列として送信してみます。 など。

$('#addsix').click(function() { 
    $('#indigenousintegration-element').append($('<input id="indigenousintegration'+count6+'" class="link" type="text" name="indigenousintegration[]"/>').hide().slideDown(100)); 
    count6++; 
}); 

入力の名前の最後に[]があることに注目してください。

+0

ありがとうございます。 これは私のために働いた。 私のコードの '名前'はフォーム内で同じなので、フォームのデフォルト入力を上書きしてしまった場合には、そのようにします。 私はこのダイナミックフィールドの名前をname = "indigenousintegrationmore []"と変更しました。 それは働いた。 ありがとうございます.. –