我的javascript代码存在问题
目前,我正在使用symfony2,我需要使用此javascript操作
我想,如果单击该按钮,列表将被填充,但问题是我需要点击两次。
这是我的代码
function sellistt() {
$('#vallc').click(function() {
$('select#vall > option').prop('selected', true);
});
}
这里是按钮:
<button id="vallc" onclick="sellistt();" class="btn btn-primary">Validate</button>
请问有什么建议吗? 谢谢!
答案 0 :(得分:1)
这就够了,
$('#vallc').click(function() {
$('select#vall > option').prop('selected', true);
});
从标记中删除内联处理程序。
您的代码中出现了什么问题? 在第一次单击时,事件将绑定到由选择器标识的元素。在第二次单击时,事件将被正常触发。但事件将在事件登记时发生多次。
答案 1 :(得分:1)
点击按钮时,您可以通过两种方式混合使用。
使用当前代码,单击按钮时,您调用函数sellistt()
(感谢按钮元素上的onclick
属性)。
函数sellistt()
将EventListener添加到按钮。此EventListener等待单击该按钮以执行此代码:
$('select#vall > option').prop('selected', true);
所以上面的代码只会在第二次点击时执行。 您只需要EventListener。把这部分放在一个函数之外:
$('#vallc').click(function() {
$('select#vall > option').prop('selected', true);
});
并删除onclick
属性,这是一种旧习惯,在您的代码中根本不需要。