如何将多个参数传递给函数

时间:2014-06-17 08:33:37

标签: javascript jquery

我正在使用onclick事件来执行某些操作,但由于som原因,第二个ID未被传递,我在这里做错了什么:                 row += '<td>' + data[staff].Naame + '(<a href="#" class="name" code="' + data[staff].place + '">' + data[staff].place1 + 'fID="' + data[staff].id+ '"' +'</a>)</td>'

    $(document).on("click", ".name", function (e) {
        var code = ($(this).attr("code"))
        var fID = ($(this).attr("fID"))
        function(code, fID);
            });

出于某种原因,fID未从'fID="' + data[staff].id+ '"'传递到function(code, fID);,为什么会这样?

3 个答案:

答案 0 :(得分:1)

避免在jQuery中使用字符串连接加载来创建元素,因为它通常是不可读的并导致输入错误(就像没有将fId放在标记属性中):

而是使用jQuery构建元素。我不是100%肯定你的链接应该从代码中看起来像什么,但是这样的东西(调整以适应):

var $td = $('<td>').html(data[staff].Naame);
$td.append($('<a>', {class: 'name', code: data[staff].place, fId: data[staff].id}).html(data[staff].place1));
row.append($td);

答案 1 :(得分:0)

我认为您需要在<a ... >标记内定义fID - 就像您为代码所做的那样。

即:

<a href="#" class="name" code="' + data[staff].place + '" fID="' + data[staff].id + '"> ... </a>

答案 2 :(得分:0)

试试这个。

row += '<td>' + data[staff].Naame + '<a href="#" class="name" code="'+data[staff].place+'" fID="'+data[staff].id+'">'+data[staff].place1+'</a></td>'