如何使用 jquery 执行以下操作?
我有一个三行和一个标题行的表。像这样:当用户在“StudentId”字段中输入数据时,使用 jquery-Ajax 从数据库中填充“StudentFirstName”和“StudentLastName”。我想要实现的是,在第一行文本框中输入 studentId 后,我想克隆第一行并将其附加为第二行,然后清除第一行中的数据。
她是我的表结构:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>
<%@ Import Namespace="MyModel.Model" %>
<div>
<table id="MyTableHeaders">
<tr>
<th>
StudentId
</th>
<th>
StudentFirstName
</th>
<th>
StudentLastName
</th>
</tr>
</table>
</div>
<div>
<table id="MyTableData">
<tr>
<td>
<input name="StudentId"/>
</td>
<td>
<input name="StudentFirstName"/>
</td>
<td>
<input name="StudentLastName"/>
</td>
</tr>
</table>
</div>
这是我的jQuery:
$('input[name="StudentId"]').focusout(function (e) {
e.preventDefault();
var link = '/Student/DisplayStudentDetails';
$.ajax({
type: 'POST',
url: link,
data: { id: $('input[name="StudentId"]').val() },
dataType: 'json',
success: function (result) {
$('input[name="StudentFirstName"]').val(result.FirstName);
$('input[name="StudentLastName"]').val(result.LastName);
$("#MyTableData tr:first").clone().appendTo("#MyTableData");
$("#MyTableData tr:first").find("input").attr("value", "").blur();
},
error: function (result) {
alert("Failed")
}
});
});
我正在努力清除第一行中的数据并将数据保留在克隆行中。使用我的代码,它会清除所有行。
此外,我注意到克隆的行具有相同的字段名称,因此它将使用在第一行中输入的 studentId 更新所有克隆的“StudentFirstName”和“StudentLastName”字段。我应该如何处理这个?
任何帮助,将不胜感激。