2014-06-30 17 views
-1

我有一個表單,其中有多個輸入字段,當用戶單擊添加按鈕時將動態添加。將參數從動態添加的輸入字段傳遞到servlet

我已經設法實現了這一點,但我現在面臨的問題是我無法將使用JavaScript函數動態添加的參數傳遞給一個servlet。

這是動態地添加多個輸入字段的代碼:

<script type="text/javascript"> 
$(document).ready(function(){ 
var counter = 2; 

$("#addDynamicDivs").click(function() { 
    var newTextBoxDiv1 = $(document.createElement('div')) 
    .attr("id", 'TextBoxDiv1'); 
    newTextBoxDiv1.attr("style",'float: left;'); 

    var newTextBoxDiv2 = $(document.createElement('div')) 
    .attr("id", 'TextBoxDiv2'); 
    newTextBoxDiv2.attr("style",'float: left;'); 

    var newTextBoxDiv3 = $(document.createElement('div')) 
    .attr("id", 'TextBoxDiv3'); 
    newTextBoxDiv3.attr("style",'float: left;'); 

    var newTextBoxDiv4 = $(document.createElement('div')) 
    .attr("id", 'TextBoxDiv4'); 
    newTextBoxDiv4.attr("style",'float: left;'); 

    newTextBoxDiv1.after().html('<label class="inputlabel2">Speaker Name : </label>' + 
     '<input type="text" name="speakername" id="speakername" value="" >'); 
     newTextBoxDiv2.after().html('<label class="inputlabel2">Speaker Country : </label>' + 
     '<input type="text" name="speakercountry" id="speakercountry" value="" >'); 
     newTextBoxDiv3.after().html('<label class="inputlabel2">Speaker Company : </label>' + 
     '<input type="text" name="speakercompany" id="textbox" value="" >'); 
     newTextBoxDiv4.after().html('<label class="inputlabel2">Speaker Desc : </label>' + 
     '<textarea name="speakerdesc" id="speakerdesc" rows="10" cols="30" ></textarea>'); 

     newTextBoxDiv1.appendTo("#TextBoxesGroup"); 
     newTextBoxDiv2.appendTo("#TextBoxesGroup"); 
     newTextBoxDiv3.appendTo("#TextBoxesGroup"); 
     newTextBoxDiv4.appendTo("#TextBoxesGroup"); 


    }); 
}); 
</script> 

似乎傳遞給servlet的唯一參數是從形式,不包括從動態添加輸入字段的參數。

如何將函數中的所有參數傳遞給servlet?

感謝,

拉茲

回答

0

你必須包括表單內的動態PARAMS。你應該把你所在的div元素放在裏面,包括動態參數。

<form> 
    <div id="TextBoxesGroup"> 
    </div> 
</form> 
+0

它的工作原理! 非常感謝@neo_lestat :) – user3790782