按钮单击不会触发JQuery函数
我的控制器具有以下操作结果:-按钮单击不会触发JQuery函数,jquery,html,forms,asp.net-mvc-4,Jquery,Html,Forms,Asp.net Mvc 4,我的控制器具有以下操作结果:- [HttpPost] [LogInFilter] public JsonResult MemberCreate(GarhwalBhawan.Models.MemberTbl Mem) // Record Insert { if (ModelState.IsValid) { db.MemberTbls.Add(Mem); db.SaveChanges(
[HttpPost]
[LogInFilter]
public JsonResult MemberCreate(GarhwalBhawan.Models.MemberTbl Mem) // Record Insert
{
if (ModelState.IsValid)
{
db.MemberTbls.Add(Mem);
db.SaveChanges();
return Json(Mem, JsonRequestBehavior.AllowGet);
}
return Json(Mem, JsonRequestBehavior.AllowGet);
}
[HttpGet]
[LogInFilter]
public PartialViewResult MemberCreate() //Insert PartialView
{
return PartialView(new GarhwalBhawan.Models.MemberTbl());
}
在我看来,我已经创建了一个表单,在单击按钮时,我调用了一个json函数,如下所示:-
成员名称
@EditorFor(model=>model.Name)
@Html.ValidationMessageFor(model=>model.Name)
成员职位
@EditorFor(model=>model.Post)
@Html.ValidationMessageFor(model=>model.Post)
会员电话
@EditorFor(model=>model.Phone)
@Html.ValidationMessageFor(model=>model.Phone)
}
好吧,您将其标记为jquery,那么为什么不使用jquery来附加处理程序呢
<input type="button" id="member_save" value="Create" />
<script>
$(document).ready(function(){
$('#member_save').on('click', function(){
//your code here
});
});
</script>
$(文档).ready(函数(){
$('#member_save')。在('click',function(){
//你的代码在这里
});
});
只需将id添加到按钮,然后用这种方式单击该id的事件即可
$(文档).ready(函数(){
$(“#我的按钮”)。单击(函数(){
警报(“点击按钮”);
//你在这里发帖吗
});
});代码>
请正确关闭括号
@section Scripts {
<script type="text/javascript">
$(document).ready(function() {
$("#myButton").click(function() {
var Name = $("#Name").val();
var Post = $("#Post").val();
var Phone = $("#Phone").val();
var Member = {
"Name": Name, "Post": Post,
"Phone": Phone
};)};
$.post("/Admin/MemberCreate", Member,
function (data) { if (data == 0) { location = location.href; } }, 'json');
});
</script>
}
@节脚本{
$(文档).ready(函数(){
$(“#我的按钮”)。单击(函数(){
var Name=$(“#Name”).val();
var Post=$(“#Post”).val();
var Phone=$(“#Phone”).val();
变量成员={
“姓名”:姓名,“职务”:职务,
“电话”:电话
};)};
$.post(“/Admin/MemberCreate”,成员,
函数(数据){if(数据==0){location=location.href;}},'json');
});
}
使用适当的事件处理程序,而不是将脚本部分加载到母版页中吗?是的,布局页$(文档).ready(函数(){$('#memberSave').on('click',函数memberSave(){var Name=$(“#Name”).val();var Post=$(“#Post”).val();var Phone=$(“#Phone”).val();var Member={“Name”:Name,“Post”:Post,“Phone”:Phone}$.post(“/Admin/MemberCreate”,成员,函数(数据){if(data==0){location=location.href;}},'json');});});仍然没有发生任何事情$(document).ready(函数(){('#memberSave').on('click',函数memberSave(){var Name=$(“#Name”).val();var Post=$(“#Post”).val();var Phone=$(“#Phone”).val();var Member={“Name”:Name,“Post”:Post,“Phone”:Phone};$.post(“/Admin/MemberCreate”,成员,函数(数据){if(data==0){location=location.href;},'json');});仍然没有发生任何事情这里有一个警告:-主线程上的同步XMLHttpRequest被弃用,因为它会对最终用户的体验产生有害影响。有关更多帮助,请查看@jquery-1.10.2.js:8686。我搞不懂这是什么。我修改了上面的问题。根据您建议的更改。是的,我已将其添加到共享文件夹下的_布局页面中。当我将代码更改为:-
$(文档)。就绪(函数(){$('#memberSave')。在('click',函数memberSave(){var Name=$(“#Name”).val();var Post=$(“#Post”).val();var Phone=$(“#Phone”).val();var Member={“Name”:Name,“Post”:Post,“Phone”:Phone};$.Post(“/Admin/MemberCreate”,成员,函数(数据){if(data==0){location=location.href;},'json');});你说什么都没发生是什么意思?你更改了按钮代码吗?看看这个};)};
你是如何管理它的…然后你告诉我们什么都没发生,当然发生了,看看你的控制台错误至少我在这里错过了。但是在代码中它被正确管理了。我没有因此而得到错误。只有一个警告:-Synchronous XMLHttpRequest由于其对最终用户体验的有害影响,主线程上的已弃用。有关更多帮助,请查看xhr.spec.whatwg.org/。send@jquery-1.10.2.js:8686。然后您应该在此处添加托管代码!并在按钮上单击并检查警报。是否弹出警报?