关于Ajax传参数到Action问题,获取不到参数,

  $("#Sea").click(function(){
            var Search = $("#Search").val();
            alert(Search);
            $.ajax({
                type: "get",
                url: "@SiteConfig.ProductSite/ProductList.aspx",
                jsonpCallback: "__ProductLists__", //回调方法
                dataType: "jsonp",                        //跨域调用数据协议
                data: { Sear: Search },   //自定义参数名,值
                success: function (data) {
                    alert("成功");
                },
                error: function () {
                    alert("失败");
                }
                });
        })
         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); //筛选属性查询
         //public ActionResult ProductLists(string catagoryId, string Sear)
        //{

        //    return null;
        //}

前台通过Ajax传Sear参数到action中,发现传不过去,而我自己写了个测试的却能传过去,各位大神,这是什么情况啊?

没引入文件
可参考
$.ajax({
type: "post",
url: "<%=basePath %>bproduct/bpgdel1.action?rand="+Math.random(),
data: {"ids":ckArray.join(",")},
dataType: "json",
success: function(data){
if(data.state){
reload();
}else{
alert(data.msg);
}
}
});

alert的时候有值是吗?测一下把参数写到url后面呢?

type: "get",
改成type: "post",
试一下;然后确认一下是没有传值过去还是根本没有进后台。

自己用开发工具看下发送的ajax请求返回什么内容,是否报错了。filterModel你没有传递这个参数,但是调用了ToList方法报错了吧。

"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。