$("#Sea").click(function(){
var Search = $("#Search").val();
alert(Search);
$.ajax({
type: "get",
url: "@SiteConfig.ProductSite/ProductList.aspx",
jsonpCallback: "__ProductList__", //回调方法
dataType: "json", //跨域调用数据协议
data: { Sear: Search }, //自定义参数名,值
});
})
public ActionResult ProductList(string catagoryId, int pageNo, ProductFilterModel filterModel, string Sear)
{
catagoryId = "001.001";
pageNo = 1;
Response.Cache.SetOmitVaryStar(true);
var pager = new PagerModel(pageNo, 12);
int MemberType=2;
if (MemberInfo !=null && (MemberInfo.MemberType) != 0 )
{
MemberType = MemberInfo.MemberType;
}
var dt = new ProdSkuProductSystem().SelectProdSkuProductByOptionValueIds(catagoryId, filterModel.ToList(),MemberType,Sear,pager); //筛选属性查询
通过前台AJax 传输一个Search参数过来, 用debugger能运行下去,但是没有调用成功,值没有传到后台,URL地址放到浏览器里面能直接运行,没明白到底哪里出问题了,运行不了!
dataType: "json",
是
dataType: "jsonp", 吧
你传的是json格式,但是{}里面不是键值对啊。见应该用“”括起来
$.ajax({
type: "get",
url: "@SiteConfig.ProductSite/ProductList.aspx",
dataType: "json",
data: { "Sear": Search }, //自定义参数名,值
success:function(data){
alert("成功");
},
error:function(){
alert("失败");
}
});
})
试试这样行不行
data: { Sear: Search }, 这不是json啊