0
我是新來的MVC,需要一種方式來提交一個模式的形式來調用一個控制器的行動。不知何故,提交的值不會傳遞給控制器。asp.net MVC與jquery模式形式
如果我不使用Jquery UI對話框模態窗體,那麼表單被正確提交(使用表單標籤內的提交按鈕)。否則,通過調用$(「#newProductForm」)。submit();從jquery中,所有的值都不會傳遞給控制器。
<a id="addNewCategory" href="#">Add new category</a>
<div id="dialog-form" title="Add new category">
@using (Html.BeginForm("ProductCategoryInsert", "Product", FormMethod.Post, new { id = "newProductForm" }))
{
@Html.HiddenFor(m => m.Id)
@Html.CheckBox("IsFeaturedProduct")
@Html.TextBox("DisplayOrder")
}
</div>
$(document).ready(function() { $("#dialog-form").dialog({ autoOpen: false, height: 300, width: 350, modal: true, buttons: { "Add new category": function() { $("#newProductForm").submit(); return true; }, Cancel: function() { $(this).dialog("close"); } }, close: function() { allFields.val("").removeClass("ui-state-error"); } }); $("#addNewCategory") .button() .click(function() { $("#dialog-form").dialog("open"); }); });
======================================== === 控制器
[HttpPost]
public ActionResult ProductCategoryInsert(ProductModel.ProductCategoryModel model)
{
var productCategory = new ProductCategory()
{
ProductId = model.Id,
CategoryId = model.CategoryId,
IsFeaturedProduct = model.IsFeaturedProduct,
DisplayOrder = model.DisplayOrder
};
_categoryService.InsertProductCategory(productCategory);
return View();
}