首页 > 解决方案 > 通过 onclick 事件将多个参数传递给 JavaScript 函数

问题描述

我已经使用 Jquery 的 DataTable 库渲染了一个表。在这个数据表中,我使用调用 javascript 函数的 onclick 事件渲染了超链接锚点。我需要向这些函数传递多个参数。

我可以将一个参数传递给函数,但我无法将变量作为两个单独的参数传递。请参见下面的代码。例如,emailGuest 函数中 GuestID 参数的值同时接受 GuestID 和电子邮件,例如 84a09eeb-9d8d-43cb-9719-e597fc5ad215,someone@site.com*

DataTable 超链接渲染部分

                    data: null, render: function (data, type, row )
                    {
                        return "<a href='#' class='btn btn-danger' onclick= DeleteData('" + row.id + "'); >Delete</a>";
                    }
                },
                {
                    data: null, render: function (data, type, row) {
                        return "<a href='#' class='btn  btn-default' onclick= emailGuest('" + row.id + ',' + row.email + "'); >Email</a>";
                    }
                },
            ]

        });
    });

emailGuest 功能

   function emailGuest(GuestID,email) {
        $('#GuestEmail').modal('show');
        document.getElementById("emailID").value = GuestID;

        document.getElementById("emailAddress").value = email;

    }

标签: javascripthtml

解决方案


您的一段代码将两个变量写成一个,因为您错过了其中的一些'', '更改为"', '"):

              data: null, render: function (data, type, row )
                {
                    return "<a href='#' class='btn btn-danger' onclick= DeleteData('" + row.id + "'); >Delete</a>";
                }
            },
            {
                data: null, render: function (data, type, row) {
                    return "<a href='#' class='btn  btn-default' onclick= emailGuest('" + row.id + "', '" + row.email + "'); >Email</a>";
                }
            },
        ]

    });
});

推荐阅读