日期:2014-05-16  浏览次数:20648 次

求大神来帮忙,做购物车的时候jquery的ajax返回值出问题了
我大概描述下我要实现的功能,我做购物车,根据产品颜色,尺码id获取相对的库存,价格,要实时更新的那种。
我的做法是用ajax发到一个ajax.aspx页面上去做处理,然后返回值,可是这中间返回来的东西完全不是我想要的,大神们看下我错在哪?正确的要怎么写

我先贴错误弹出框,不管怎么弄他都把整个页面乱七八糟的弹回来了:


下面我贴代码:jquery部分:

            var sizeid = $("#hid_sizeid").val(); //这是尺码ID,有值
            var colorid = $("#hid_colocid").val();//这是颜色ID,有值
            $.ajax({
                url: "ajax.aspx?colorid=" + colorid + "&sizeid=" + sizeid + "",
                type: "post",
                datatype: "json",//类型我用string,html,text都试过效果一样
                success: function (result) {
                    alert(result);
                }
            });

ajax.aspx.cs页面代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
public partial class ajax : System.Web.UI.Page
{
    public int ProNum = 0;//产品库存
    public int waringNum = 0;//预警值
    public decimal priceNor = 0;//普通价
    public decimal PriceSale = 0;//站点价
    public decimal PriDiscount = 0;//折扣率
    DataSet ds = new DataSet();
    DataSet dt = new DataSet();
    Maticsoft.DAL.ProductDetail _ProductDetailDAL = new Maticsoft.DAL.ProductDetail();//这是数据层   
 Maticsoft.Model.ProductDetail _ProductDetailModel = new Maticsoft.Model.ProductDetail();//这是实体层
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            int productdetailId = 0;
            int colorid = Convert.ToInt32(Request.QueryString["colorid"]);
            int sizeid = Convert.ToInt32(Request.QueryString["sizeid"]);
            IDataParameter[] parameters = new SqlParameter[2];
            parameters[0] = new SqlParameter("@Color", SqlDbType.Int);
          &nbs