通过jQuery检索Repeateritem

问题描述

我想通过jquery检索代码背后的saveorder函数的重复序列

这是我的jquery代码:

 function saveOrder(controlid) {
        var id = controlid.name.replace("$btnSave","");
        console.log(id)
        $.ajax({
            type: "POST",url: '/mobile/Default.aspx/saveOrder',data: '{par:"' + id + '"}',contentType: "application/json; charset=utf-8",success: function (data) {
                console.log(data.d);
            },failure: function (response) {
                console.log(response.d);
                alert(response.d);
            }
        });
    }

这是我的代码隐藏代码:

 [WebMethod]
public static void saveOrder(string par)
{
    mobile_Menu m = new mobile_Menu();

    RepeaterItem row =  (RepeaterItem)m.FindControl(par);

    RadioButtonList rdblExtraSauce = (RadioButtonList)row.FindControl("rdblExtraSauce");
    CheckBoxList chkExtras = (CheckBoxList)row.FindControl("chkExtras");
    CheckBoxList chklExtraDrink = (CheckBoxList)row.FindControl("chklExtraDrink");
    RadioButtonList rdblExtraOption = (RadioButtonList)row.FindControl("rdblExtraOption");
    RadioButtonList rdblSauce = (RadioButtonList)row.FindControl("rdblSauce");
    CheckBoxList chkGarnish = (CheckBoxList)row.FindControl("chkGarnish");
    List<ListItem> emptyList = new List<ListItem>();
    HiddenField hfProductId = (HiddenField)row.FindControl("hfProductId");
    string rdlPriceId = ((RadioButtonList)row.FindControl("rdblSize")).SelectedValue.Split(',')[0];
    HiddenField hfMainProductId = (HiddenField)row.FindControl("hfMainProductId");


    //Get previous values
    if (m.Session["Cart"] != null)
    {
        m.values = (List<Order>)m.Session["Cart"];
    }

    if (chklExtraDrink.Items.Count > 0)
    {
        foreach (ListItem item in chklExtraDrink.Items)
            if (item.Selected) m.values.Add(new Order(item.Value.Split(',')[0],item.Value.Split(',')[1],emptyList,1));
    }

    if (rdblExtraSauce.Items.Count > 0)
    {
        if (rdblExtraSauce.SelectedValue != "Geen saus")
        {
            m.values.Add(new Order(rdblExtraSauce.SelectedValue.Split(',rdblExtraSauce.SelectedValue.Split(',1));
        }
    }


    switch (Convert.ToInt32(hfMainProductId.Value))
    {
        case 16:
            m.values.Add(new Order(hfProductId.Value,rdlPriceId,m.addMultiChoice(chkGarnish),1));
            break;
        case 17:
            //values.Add(new Order(hfProductId.Value,rdlPrice,rdblSauce.SelectedItem,addMultiChoice(chkExtras),1)); ;
            m.values.Add(new Order(hfProductId.Value,m.addMultiChoice(chkExtras),1,rdblExtraOption.SelectedItem));
            break;
        case 19:
            m.values.Add(new Order(hfProductId.Value,1));
            break;
        case 20:
            m.values.Add(new Order(hfProductId.Value,1)); ;
            break;
        case 21:
            m.values.Add(new Order(hfProductId.Value,1));
            break;
        case 22:
            m.values.Add(new Order(hfProductId.Value,1));
            break;
        default:
            m.values.Add(new Order(hfProductId.Value,1));
            break;
    }


    //Save updated list
    m.Session["Cart"] = m.values;

    if (m.Session["Cart"] != null)
    {
        m.btnOrder.Text = "Winkelmandje (€ " + Global.CalcTotPrice(m.values) + ")";

    }

}

我不确定我是否以正确的方式进行操作,jquery还是我的新手。 通过此代码,我得到了NullReferenceException。通过参数成功传递了repeaterItem的uniqueID,但是转换为RepeaterItem失败。

更多信息:我有一个嵌套的Repeater(总共2个),我想要第二个Repeater的RepeaterItem。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...