首先,我要说:我是MVC的新手,英语不是我的第一语言,所以我会尽力解释自己。
在我的索引中,3个选择标签,当所有3个具有不同的索引时,则0加载部分视图。部分视图是一组包含输入和选择标记的表,由模型传递的数据填充。 用户应该能够更改标签中的值并按“保存”按钮提交更改(将由存储过程保存),而无需重新加载任何内容。
当我尝试在没有“更改页面”的情况下执行此操作时出现问题。
我只想将“保存”按钮与传递数据的控制器上的方法连接起来。
控制器功能
public void FUNCTIONCALLED(MODEL m)
{
using (DBEntities data = new DBEntities ())
{
data.STOREDPROCEDURE();
}
}
partialView.cshtml
@using (Html.BeginForm("FUNCTIONCALLED", "CONTROLLER"))
{
<div class="table-head">
<table>
<!-- input & select stuff here -->
</table>
</div>
<div style="clear: both;">
<button type="submit" class="btn btn-primary">Salva</button>
</div>
}
感谢您的帮助。
编辑:如果我删除表单并使用ajax调用,我会收到错误:String too long
答案 0 :(得分:1)
输入类型提交将表单发送到服务器并重新加载页面。
你必须使用像这样的ajax方法:
function Save()
{
$.ajax({
url: "@Url.Action("MyMethode", "MyController")",
type: "POST",
contentType: "application/json",
data: JSON.stringify({ MyMethodeParam : $("#MyInputID").val() })
}).done(function (data) {
if (data == true)
{
alert("Save success");
}
else alert("Save error");
}).fail(function () {
alect("Ajax Fail");
});
}
删除您的表单,然后点击按钮即可使用
<button type="button" class="btn btn-primary" onClick="save();">Save</button>