我试图将2个数字解析为函数saveQuestion的参数,但它不起作用。

$("#questionRow")
.append('<input type="submit" class="btn btn-default" id="saveQuestion'
        + addSectionCount + '" value="Save question '
        + addSectionCount + '" onclick="saveQuestion('
        + addOpSectionCount + '\',\'' addSectionCount + ')" ></div>');

最佳答案

如果您只是使用jQuery来注册一个正确的回调函数,而不是使用90年代风格的内联事件处理程序,那么它就不会那么脆弱,完全避免了这个问题:

$('<input type="submit" />')
    .attr('id', 'saveQuestion' + addSectionCount)
    .val('Save question ' + addSectionCount)
    .on('click', function() {
        saveQuestion(addOpSectionCount, addSectionCount);
    })
    .appendTo('#questionRow')'

还要注意jQuery函数的其他用法,以避免在HTML字符串中使用字符串连接。
注意:我已经反转了append以便链式的.on调用应用于新创建的元素,而不是#questionRow
注2:我通常会使用$('<el>', {id: ..., val: ...})但是MSIE已经(有)了吗输入元素的语法问题。

关于javascript - JavaScript-在函数内串联2个参数不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36084840/

10-12 14:23