Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用MVC将多个值传递到服务器端Datatable Jquery中的按钮_Javascript_Asp.net Mvc_Datatables - Fatal编程技术网

Javascript 使用MVC将多个值传递到服务器端Datatable Jquery中的按钮

Javascript 使用MVC将多个值传递到服务器端Datatable Jquery中的按钮,javascript,asp.net-mvc,datatables,Javascript,Asp.net Mvc,Datatables,我试图将MessageId和MobileNumber的值作为参数传递给Delete按钮。目前,当我运行下面的javascript代码时,只显示MessageId的值(我不知道如何添加MobileNumber的值)。需要帮忙吗 var schedulemessageListVM; $(function () { schedulemessageListVM = { dt: null, init: function () {

我试图将MessageId和MobileNumber的值作为参数传递给Delete按钮。目前,当我运行下面的javascript代码时,只显示MessageId的值(我不知道如何添加MobileNumber的值)。需要帮忙吗

 var schedulemessageListVM;
    $(function () {
        schedulemessageListVM = {
            dt: null,
            init: function () {
                dt = $('#schedulemessage-data-table').DataTable({
                    "dom": '<"top"if>rt<"bottom"lp><"clear">',
                    "pageLength": 10,
                    "serverSide": true,
                    "processing": true,
                    "order": [[0, "desc"]],
                    "ajax": {
                        "url": "/MessageReport/LoadData2",
                        "type": "POST",
                        "datatype": "json"
                    },

                    "columns": [
                     {

                        "targets": [0],
                            "data": "MessageId",  "autoWidth": true,
                            "render": function (data, type, full)
                            {
                             // Pass the value of MessageId and  MobileNumber into the button
                                var a = '@Html.ActionLink("Delete", "Delete", "MessageReport", new { id = "MessageId" }, new { @class = "btn btn-xs btn-danger" })'.replace("MessageId", data);

                                return a;                                    
                            },
                        },
                        { "title": "Message Id", "data": "MessageId", "name": "MessageId", "autoWidth": true }
                        { "title": "Mobile Number", "data": "MobileNumber", "name": "MobileNumber", "autoWidth": true }
                   ]
                });
            }                 
        } 
        // initialize the datatables 
        schedulemessageListVM.init();

    }); 
var schedulemessageListVM;
$(函数(){
schedulemessageListVM={
dt:null,
init:函数(){
dt=$('#schedulemessage数据表')。数据表({
“dom”:“rt”,
“页面长度”:10,
“服务器端”:正确,
“处理”:对,
“订单”:[[0,“说明”]],
“ajax”:{
“url”:“/MessageReport/LoadData2”,
“类型”:“职位”,
“数据类型”:“json”
},
“栏目”:[
{
“目标”:[0],
“数据”:“MessageId”,“autoWidth”:true,
“渲染”:函数(数据、类型、完整)
{
//将MessageId和MobileNumber的值传递到按钮中
var a='@Html.ActionLink(“删除”,“删除”,“消息报告”,新的{id=“MessageId”},新的{@class=“btn btn xs btn danger”})。替换(“MessageId”,数据);
返回a;
},
},
{“title”:“Message Id”,“data”:“MessageId”,“name”:“MessageId”,“autoWidth”:true}
{“title”:“Mobile Number”,“data”:“MobileNumber”,“name”:“MobileNumber”,“autoWidth”:true}
]
});
}                 
} 
//初始化数据表
schedulemessageListVM.init();
}); 

您可以使用以下方法,在单击按钮之前不需要传递任何复杂的数据:

首先为按钮创建一行,并添加一个
DeleteBtn
类,以便稍后将其用作选择器。我不需要更多的信息

"columns":[{
            "data": "Delete",
            "defaultContent": '<button class="btn btn-danger DeleteBtn">Delete</button>',
            "title": "Delete"
        }, ...
现在,传递的数据包含您可能需要的所有信息,可以像这样使用:

    fucntion myDeleteFunction(data){
 alert(data.MessageId);
 alert(data.MobileNumber);
 }
或该行所需的任何其他数据


如果您不熟悉
$(“#myTable”).DataTable().row($(this).parents($).data())
概念:

$(“#myTable”).DataTable()定义将使用与DataTables相关的方法

.row()
用于选择表中的一行,需要一个选择器

this.parents(“tr”)
选择表中包含单击的删除按钮的行


.data()
将所选行的数据作为对象返回。

在同事的帮助下找到了问题的解决方案。张贴以帮助将来有相同问题的人

     "render": function (data,  type, full)
       {
           {
              return '<a class="btn btn-danger" href="/MessageReport/Delete?MessageId='+full.MessageId+'&MobileNumber='+full.MobileNumber+'">Delete </a>';
           }

      }
“呈现”:函数(数据、类型、完整)
{
{
返回“”;
}
}

感谢您的回答,它帮助了我:)
     "render": function (data,  type, full)
       {
           {
              return '<a class="btn btn-danger" href="/MessageReport/Delete?MessageId='+full.MessageId+'&MobileNumber='+full.MobileNumber+'">Delete </a>';
           }

      }