ActionView
我有通过将数据从 ajax 调用传递到控制器中的方法而生成的代码。我只能在 ajax 调用返回时访问该数据。我试图显示数据的区域没有刷新,所以我将它添加到我的PartialView
返回到我创建的页面 div。我的问题是我有一个完全相同的小表的占位符,因此在用户提交调用 ajax 请求所需的内容之前,页面不会看起来很傻。我的问题是我在占位符区域和显示的区域中的按钮无法正常工作。我认为正在发生的事情是 javascript 被具有相同信息的两个区域弄糊涂了,但是更改名称/ID 似乎并不能解决它。这是我的代码。(我还需要占位符表在隐藏之前能够正常工作)
这是在主页:
<tr>
<td>Comments: @Html.TextBox("comments2", comment)</td>
<td></td>
</tr>
<tr>
<td style="vertical-align: middle;">Booking#:@Html.TextBox("bookNum2", bookNum)</td>
<td><input id="saveOrder2" type="button" value="Save Order2" onclick="saveOrder2(true)" /></td>
</tr>
<tr>
<td style="vertical-align: middle;">Ship Date:@Html.TextBox("shipDate2", shipDate)</td>
<td>
<input id="Build" type="button" value="Build Load" /> </td>
</tr>
</table>
在 PartialView 页面中,我有这个:
<tr>
<td>Comments: @Html.TextBox("comments", comment)</td>
<td></td>
</tr>
<tr>
<td style="vertical-align: middle;">Booking#:@Html.TextBox("bookNum", bookNum)</td>
<td><input id="saveOrder" type="button" value="Save Order" onclick="saveOrder(true)" /></td>
</tr>
<tr>
<td style="vertical-align: middle;">Ship Date:@Html.TextBox("shipDate", shipDate)</td>
<td>
<input id="Build" type="button" value="Build Load" /></td>
</tr>
</table>
然后我正在使用的javascript函数:
function saveOrder(isSave)
{
var comments = document.getElementById("comments2").value;
var bookNum = document.getElementById("bookNum2").value;
var shipDate = document.getElementById("shipDate2").value;
var itemList = grabSaveItems();
//alert(itemList.toString());
var request = $.ajax(
{
type: "POST",
url: "/Home/saveOrder",
data: "itemList=" + itemList+"&isSave="+isSave+"&comments="+comments+"&bookNum="+bookNum+"&shipDate="+shipDate,
success: function (itemList) {
}
});
request.done(function () {
if (isSave == true)
{
alert("The Order Was Saved");
}
});
request.fail(function (Check, textStatus) { alert("Request failed: " + textStatus); });
}
因此,根据订单号,我将我需要的信息添加到模型中,然后返回我的 PartialView 以显示我需要的信息。在进行此 ajax 调用后单击“保存订单”时,出现以下运行时错误:Microsoft JScript 运行时错误:未找到成员。这发生在调用保存订单之后,调试器指向该函数之后的行,不确定这意味着什么。任何帮助,将不胜感激。