onclick方法不工作jquery

时间:2014-12-27 08:22:12

标签: javascript jquery html twitter-bootstrap

我尝试在用户从option选择select时附加锚标记,并在用户从select中选择任何选项时正确附加锚标记。< / p>

附加锚标记的代码:

$(function () {
 //others codes ......
 $('#anchor_placeholder').append(
     "<a class='btn btn-info btn-xs' 
         onClick='placeholderclick("+$(option).val()+")'>" + $(option).val() + "</a>"
 );
});
function placeholderclick(value) {
    alert(value);
}

现在,当我点击附加的锚链接时,它不会向我显示任何警告消息,但是如果我从上面的追加功能中删除了placeholderclick("+$(option).val()+")的参数,那么它会向我显示警告......

我想知道如何提醒参数值(参数值来自追加方法)

请建议或帮我解决这个问题,抱歉我的英文不好, 提前谢谢。

1 个答案:

答案 0 :(得分:0)

你需要逃避双引号

    $('#anchor_placeholder').append(
        "<a class='btn btn-info btn-xs'onClick='placeholderclick(\""+$(option).val()+"\")'>" + $(option).val() + "</a>"
    );

假设您选择了值苹果,而不是您生成的链接将是这样的

<a class='btn btn-info btn-xs' onClick='placeholderclick(apple)'>apple</a>

所以javascript会看到你的值(apple)有变量而不存在。

如果你转义双引号,你的链接就会像这样

<a class='btn btn-info btn-xs' onClick='placeholderclick("apple")'>apple</a>

现在你的价值(苹果)将被视为字符串。