我有一個Ajax調用我的控制器操作是這樣的:Ajax請求返回值
var m = $.ajax({
mtype: "GET",
url: '@Url.Action("GetBrandForValidation")',
data: { actionparameter: value },
async: false,
cache: false
});
就像你看到的我回到actionparametter我的控制器和控制器都返回true或false,這必須是我的「米」價值,但我無法得到它的工作。有任何想法嗎?
控制器代碼:
public virtual JsonResult GetBrandForValidation(string actionparameter)
{
var vendorId = _service.GetVendorIdByUsername(GetUserName());
bool k;
var brands = _service.GetBrandsByVendor(vendorId);
var brand = new BrandsViewModel();
brand.BrandName = "Opret ny Brand...";
brands.Add(brand);
foreach (var brandsViewModel in brands)
{
if (brandsViewModel.BrandName == "Intet")
{
brandsViewModel.BrandName = "";
}
}
var list = brands.Select(s => s.BrandName);
if (list.Contains(actionparameter))
{
k = true;
}
else
k = false;
return Json(k,JsonRequestBehavior.AllowGet);
}
和全功能代碼:
var checkBrands = function(value, colname) {
var m = $.ajax({
mtype: "GET",
url: '@Url.Action("GetBrandForValidation")',
data: { actionparameter: value },
async: false,
cache: false
});
if (m == true)
return [true, ""];
else
return [false, "Brand eksistere ikke"];
};
林相當新的JavaScript的非常awfull,所以不要判斷硬
[Ajax中的第一個不只是裝飾。 :)](http://www.pluralsight-training.net/microsoft/players/PSODPlayer.aspx?author=scott-allen&name=mvc3-building-ajax&mode=live&clip=0&course=aspdotnet-mvc3-intro) – bzlm
唯一的問題我可以看到的是,在ajax調用folowing丟失.. dataType:「json」, – Steve
@bzim - 它不是Ajax,它的Sjax。請參閱'async:false'並歡迎瀏覽器UI鎖定的美妙世界。 – Quentin