在网格的loadComplete中设置radiobutton $(“#地址列表”).jqGrid({ url:'/Storage/Shipping/GetCustomerAddresses?q=2&Customerid='+$(“#saveCustomerID”).val(), 数据类型:“Json”, jsonReader:{ root:“Data.rows”, 页面:“Data.page”, 总计:“Data.total”, 记录:“数据.记录”, 重复项:对, 用户数据:“用户数据”, 细胞:“细胞” }, colNames:['','第1行','第2行','城市','州', colModel:[ {名称:'myradio',宽度:30,固定值:true,对齐:'center',可调整大小:false,可排序:false, 格式化程序:函数(cellValue,选项){ 返回“”; } }, {名称:'Line1',索引:'Line1',宽度:250}, {名称:'Line2',索引:'Line2',宽度:250}, {名称:“城市”,索引:“城市”,宽度:210}, {name:'State',index:'State',宽度:75} ], 页码:1, rowNum:50, 行列表:[20,50,100], 寻呼机:“#寻呼机”, viewrecords:是的, 分组:false, 标题:“地址”, mtype:“POST”, 宽度:“100%”, 高度:“100%”, 有一次:是的, 可排序:false, beforeSelectRow:函数(rowid,e){ var-radio=$(e.target).closest('tr').find('input[type=“radio”]); radio.attr('checked','checked'); $(“#saveCustomerAddressID”).val(rowid.toString()); 返回true;//允许行选择 }, loadComplete:函数(){ var grid_id=$(“#地址列表”).jqGrid('getdataid'); 对于(变量i=0;i

在网格的loadComplete中设置radiobutton $(“#地址列表”).jqGrid({ url:'/Storage/Shipping/GetCustomerAddresses?q=2&Customerid='+$(“#saveCustomerID”).val(), 数据类型:“Json”, jsonReader:{ root:“Data.rows”, 页面:“Data.page”, 总计:“Data.total”, 记录:“数据.记录”, 重复项:对, 用户数据:“用户数据”, 细胞:“细胞” }, colNames:['','第1行','第2行','城市','州', colModel:[ {名称:'myradio',宽度:30,固定值:true,对齐:'center',可调整大小:false,可排序:false, 格式化程序:函数(cellValue,选项){ 返回“”; } }, {名称:'Line1',索引:'Line1',宽度:250}, {名称:'Line2',索引:'Line2',宽度:250}, {名称:“城市”,索引:“城市”,宽度:210}, {name:'State',index:'State',宽度:75} ], 页码:1, rowNum:50, 行列表:[20,50,100], 寻呼机:“#寻呼机”, viewrecords:是的, 分组:false, 标题:“地址”, mtype:“POST”, 宽度:“100%”, 高度:“100%”, 有一次:是的, 可排序:false, beforeSelectRow:函数(rowid,e){ var-radio=$(e.target).closest('tr').find('input[type=“radio”]); radio.attr('checked','checked'); $(“#saveCustomerAddressID”).val(rowid.toString()); 返回true;//允许行选择 }, loadComplete:函数(){ var grid_id=$(“#地址列表”).jqGrid('getdataid'); 对于(变量i=0;i,jqgrid,Jqgrid,以上代码在loadcomplete中正确设置选择。$(“#saveCustomerAddressID”).val()是JSON数据的行ID。 单选按钮在beforeSelectRow中设置。我知道要设置的radiobutton的行号和网格列,但是如何设置radiobutton?如果您有行号和网格列,那么应该不难。获取单选按钮所在列的id(css)(请查看开发人员工具)。现在让我们假设单选按钮位于一个列名称“Demo”中 所以我想id应该是这样的 $("#addressList")

以上代码在loadcomplete中正确设置选择。$(“#saveCustomerAddressID”).val()是JSON数据的行ID。
单选按钮在beforeSelectRow中设置。我知道要设置的radiobutton的行号和网格列,但是如何设置radiobutton?

如果您有行号和网格列,那么应该不难。获取单选按钮所在列的id(css)(请查看开发人员工具)。现在让我们假设单选按钮位于一个列名称“Demo”中

所以我想id应该是这样的

        $("#addressList").jqGrid({
        url: '/Storage/Shipping/GetCustomerAddresses?q=2&Customerid=' + $("#saveCustomerID").val(),
        datatype: "Json",
        jsonReader: {
            root: "Data.rows",
            page: "Data.page",
            total: "Data.total",
            records: "Data.records",
            repeatitems: true,
            userdata: "userdata",
            cell: "cell"
        },
        colNames: ['', 'Line 1', 'Line 2', 'City', 'State'],
        colModel: [
                         { name: 'myradio', width: 30, fixed: true, align: 'center', resizable: false, sortable: false,
                             formatter: function (cellValue, option) {
                                 return '<input type="radio" name="radio_' + option.gid + '" />';
                             } 
                         },
                         { name: 'Line1', index: 'Line1', width: 250 },
                         { name: 'Line2', index: 'Line2', width: 250 },
                         { name: 'City', index: 'City', width: 210 },
                         { name: 'State', index: 'State', width: 75 }
                    ],
        page: 1,
        rowNum: 50,
        rowList: [20, 50, 100],
        pager: '#pager',
        viewrecords: true,
        grouping: false,
        caption: "Addresses",
        mtype: "POST",
        width: "100%",
        height: "100%",
        loadonce: true,
        sortable: false,
        beforeSelectRow: function (rowid, e) {
            var radio = $(e.target).closest('tr').find('input[type="radio"]');
            radio.attr('checked', 'checked');
            $("#saveCustomerAddressID").val(rowid.toString());
            return true; // allow row selection
        },
        loadComplete: function () {
            var grid_ids = $("#addressList").jqGrid('getDataIDs');
            for (var i = 0; i < grid_ids.length; i++) {
                if ($("#saveCustomerAddressID").val() == grid_ids[i]) {
                    {
                        $("#addressList").jqGrid('setSelection', grid_ids[i], true);

                    }
                }
            }
        }
        //, postdata: { CustomerID: $("#saveCustomerID").val() }
    }); 

对于集合选择,在此之后使用jqgrid的setSelection方法继续使用loadcomplete代码

如果在beforeSelectRow中代码对u运行良好,并且与您希望在loadcomplete中使用的代码相同,则向loadcomplete添加相同的代码这有什么问题?当然你们不能用这个“e”,但你们说你们有行号和网格列。attr.attr应该是。attr在上面。是的,它正在工作,谢谢。添加了var radio=$(“#”+$(“#saveCustomerAddressID”).val()).find('input[type=“radio”]);在loadcomplete中,使用单选按钮选择单元格$(#saveCustomerAddressID”).val()是行ID。如果要将其标记为答案,它可能会帮助其他人。
var demo= $("'#'+rowid+'Demo'")//check developer tools for confirmation

demo.attr('checked', 'checked');
$("#saveCustomerAddressID").val(rowid.toString());//continue with you loadComplete code