2011-03-08 67 views
0

的,請在下面的代碼的JavaScript動態添加元素


mydiv1.innerHTML=mydiv1.innerHTML + '<label>*Functional Area:<span class="small">Enter Company Name</span></label><input type="text" name="FunctionalArea_"'+counter1+' id="company" /><label class="spacing">*Experience:<span class="small">Number of years</span></label><select name="Exp_In_FA_"'+ counter1 +' id="experience"><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>morethan 5</option</select><input type="button" value="Add" id="bt1" onclick="generate()" style="font-size:8pt;height:25px;width:55px"/>' 

看看現在上面的JavaScript代碼是否正確稱爲新的元素得到嵌入在所需位置。但問題是,當這些值傳遞給servlet時,我無法使用request.getParameter(「Exp_In_FA_0」)檢索Exp_In_FA_0。它只是返回NULL。請糾正我在哪裏做錯了? 對不起,我無法發佈多行代碼。代碼標籤只需要一行代碼

+0

什麼servlet和什麼要求?請提供更多背景。你也可以手動分割代碼塊,你只需要縮進每一行 –

+2

'name =「FunctionalArea _」'+ counter1 +''應該是'name =「FunctionalArea _'+ counter1 +'」' – 2011-03-08 09:59:44

+0

所有這些控件都存在於一些

或不? –

回答

1

使用Firebug(或類似的工具)來查看實際genearted代碼(使用「檢查元素嘗試「)功能。

你可能想確認name,其中form元素添加等

0

新元素嵌入在 所需的位置。

檢查生成的HTML文檔中是否新元素laso OK的name屬性。您可以在Firefox中選擇您的輸入框和周圍的HTML,並從上下文菜單中選擇「Yiew選擇源」。 - 或者您可以使用Google Chrome的「檢查」功能來觀看元素。

+0

如果元素是通過Javascript動態生成。 – Nivas

+0

@Nivas Thnaks。也增加了Chrome選項。 – vbence

0

有一個在這裏閱讀 https://stackoverflow.com/search?q=innerhtml+form+not+passed

http://domscripting.com/blog/display/99

首先,使用DOM創建 塊級元素,如 使用DIV-的createElement。然後更新 此 新創建的元素的innerHTML屬性。最後,插入 更新的元素到文檔 使用例如,appendChild或 的insertBefore一個DOM方法:

var newdiv = document.createElement("div"); 
newdiv.innerHTML = xhr.responseText; 
var container = document.getElementById("container"); 
container.appendChild(newdiv);