如何为动态创建的文本框赋值



我有一行有一个添加按钮。单击添加行将被动态添加,单击del行将被删除。行由下拉列表和文本框的集合组成。一个文本框必须预先填充一个值,该值基于同一行中先前文本框中的用户输入。

只能在文本框中预填充第一行的值。对于动态行,文本框没有被预填充。从数据库中获取值,但不在文本框中打印值。

以下是我的代码:

$("tr.dynamicRow").each(function() {
var studentCreate = $(this).find('#studentCreate').val();//textbox which gets added dynamically
// AJAX to get values from DB and this works fine and the value is stored in result variable
if (result != "" && result !=null) {                     
$(this).find('#studentCreateNew').attr('value',result);//this doesn't work
}
});

HTML代码:

<tr class= "dynamicRow">
//some drop downs
<div class="inputField">
<td><b><bean:message key="label.student.create" />:</b></td>
<td ><html:text property="studentCreate" name="studentForm" styleId="studentCreate" onchange="populateStudentCreate(this);" size="10" maxlength="6"  ></html:text></td>
</div>

<div class="inputField">
<td>    
<b><bean:message key="label.student.create" />:</b>
</td>
<td><html:text property="studentCreateNew" name="studentForm" styleId="studentCreateNew" size="10" maxlength="6"></html:text></td>
//Add button
</tr>

请帮我做这件事。提前谢谢。

而不是$(this).find('#studentCreate').attr('value',result);'你可以试试$(this).find('#studentCreate').append('<p>'+result+'</p>);

使用#studentCreate可能不是生成的内容,或者它们不止一个。如果你能为你想要瞄准的每个元素分配一个唯一的类:

$("tr.dynamicRow td input.studentCreate") 

例如,直接选择输入字段。那么您就不需要直接从该行进行解析。

此外,问题是:标记并没有在TD标记周围列出TR,而是列出DIV。这是正确的标记吗?是否有一个包含带有dynamicRow类的TR选项卡的示例?

最新更新