我正在通过javascript动态创建表:
function createNewML(id, mlName, mlAddress){
var table = $("<tr />");
table.html(addToMLContainer(id, mlName, mlAddress));
$("#AddedMlsContainer").append(table);
}
function addToMLContainer(id, mlName, mlAddress){
return '<td><stripes:text>' + mlName + ' ' + mlAddress + '</stripes:text></td>' +
'<td hidden="hidden"><input name="mlFullName" type="hidden" value="' + mlName + ' ' + mlAddress + '" /></td>' +
'<td hidden="hidden"><input name="mlId" type="hidden" value="' + id + '" /></td>' +
'<td><input type="button" value="Remove" class="remove" onclick="this.closest(\'tr\').remove()"/></td>'
}
这是我在jsp文件中的表单
<s:form beanclass="gocardmanager.action.ContentActionBean">
<div id="added_mls" style="float:left;">
<table id="AddedMlsContainer" style="width:300px;table-layout: fixed">
<tr>
<th>Выбранные точки</th>
<th>Удалить</th>
</tr>
</table>
</div>
<div id="added_cards" style="float:left;">
<table id="TextBoxContainer" style="width:300px;table-layout: fixed">
<tr>
<th>Card Name</th>
<th>Percent</th>
<th>Action</th>
</tr>
</table>
</div>
<div id="new_offer_details" style="float:left;">
<p>Имя</p>
<input width="200px">
<p>Описание</p>
<textarea rows="10" cols="45" name="text"></textarea>
<p>Начало</p>
<p>Окончание</p>
<p>Загруженная картина</p>
<s:submit name="test" value="Save Changes"/>
</div>
</s:form>
现在我想通过表格和其他输入传递我的所有值。但我无法从动态创建的表中获取值(AddedMlsContainer)。
答案 0 :(得分:1)
您需要在文档上调用createNewML()函数,以便创建表行。例如:
$(document).ready(function(){
createNewML('1','testname1','testadd1');
createNewML('2','testname2','testadd2');
createNewML('3','testname3','testadd3');
})