Javascript 尝试使用AJAX动态加载表,但未显示行
在表单中,我有一个下拉列表和一个文本框,可以获取用户的输入。然后,当用户提交表单时,我不希望整个页面刷新。我只想让它下面的表刷新并从数据库加载数据。我尝试了下面的代码,但只弹出警报。桌子还是空的Javascript 尝试使用AJAX动态加载表,但未显示行,javascript,c#,ajax,asp.net-mvc-viewmodel,Javascript,C#,Ajax,Asp.net Mvc Viewmodel,在表单中,我有一个下拉列表和一个文本框,可以获取用户的输入。然后,当用户提交表单时,我不希望整个页面刷新。我只想让它下面的表刷新并从数据库加载数据。我尝试了下面的代码,但只弹出警报。桌子还是空的 $('#frmPrescDrugList').submit(function (e) { e.preventDefault(); // Prevent Default Submission $.ajax({ url: '/consultatio
$('#frmPrescDrugList').submit(function (e) {
e.preventDefault(); // Prevent Default Submission
$.ajax({
url: '/consultation/PrescDrugList',
type: 'POST',
data: $(this).serialize(), // it will serialize the form data
dataType: 'html',
success: function (data) {
var row_data = "";
row_data += "@{ var rowNum = 0; } @foreach (var item in Model.LoadDrugList) {
rowNum += 1;
<tr Class="odd gradeX">
<td>@rowNum</td>
<td>@item.dsubsystem</td>
<td>@item.tradename </td>
<td style="text-align: center; vertical-align: middle;"><form Class="form-horizontal" role="form" action="@Url.Action("Prescription", "consultation", new {dgid = item.dgid})" method="post"><Button type="submit" Class="btn btn-default" name="btnDrugListSelect">Select</Button></form></td>
</tr>
}";
$("#LoadDrugListTable").append(row_data);
alert('Drug list has been loaded.');
},
error: function () {
alert('Ajax Submit Failed ...');
}
}); // end ajax
}); // end form-submit
尝试将双引号替换为单引号。 为了保持一致性,您可以在任何地方替换它们
<td ... action='@Url.Action("Prescription", "consultation", new {dgid = item.dgid})' ... </td>
您的意思是仅在@url.action内用引号替换“引号”?或者整个页面?我已经尝试将url.action的内部部分改为“to”,但仍然保持这一行。也许dgid
有一些问题?在foreach loopLast idea的过去的花括号中有额外的引号和分号,用Html.Raw
-{dgid=Html.Raw(item.dgid)}它是Id
还是paid
?我建议创建一个新问题,这会让人困惑。@MantasČkanauskas paid是Id。很抱歉,我弄糊涂了。我会改的it@MantasČekanauskas我意识到了一些事情。当我试图用页面中的常用表格点击按钮将id传递到下一页时,它工作正常。id没有传递到b在我注释掉页面中的普通表格后,点击按钮,我用ajax加载表格。@MantasČekanauskas你能看看我的新问题吗?
[HttpGet()]
public ActionResult PatientMedicalInfo(string paid)
{
PatientLookupVM Patient = new PatientLookupVM();
dynamic CurrentPatientDetailsByPtId = Patient.GetCurrentPatientDetailsByPtId(paid);
Patient.LoadCurrentPatientDetails = CurrentPatientDetailsByPtId;
return View(Patient);
}
<td ... action='@Url.Action("Prescription", "consultation", new {dgid = item.dgid})' ... </td>