Gav*_*iel 6 jquery onchange radio-button jquery-mobile
我有一组具有相同名称但不同值的单选按钮.我想做点什么:
$("#langs").on("change", "[name=locale]", myfunction);
Run Code Online (Sandbox Code Playgroud)
这是有效的,但当我点击一个新的单选按钮时,myfunction会被调用两次:一次是"旧"单选按钮,它会自动取消选中,一次是新单选按钮,我点击它.
将onchange更改为onclick不是一个解决方案,因为我将它与jquery-mobile一起使用并且它使用label包装输入,因此标签被点击,而不是输入.
您可以$(this)
作为参数传递myfunction
,然后在内部myfunction
检查是否选中了单选按钮
$("#langs").on("change", "[name=locale]", function() { myfunction($(this)); } );
function myfunction(elem) {
if(elem.is(':checked')) {
// code here
}
}
Run Code Online (Sandbox Code Playgroud)
这对你有用吗?继JQM文件
HTML:
<div data-role="page">
<fieldset data-role="controlgroup">
<legend>Choose a language:</legend>
<input type="radio" name="langs" id="english-lang" value="en" />
<label for="english-lang">English</label>
<input type="radio" name="langs" id="korean-lang" value="ko" />
<label for="korean-lang">Korean</label>
</fieldset>
</div>?
Run Code Online (Sandbox Code Playgroud)
JS:
$("input[name=langs]:radio").bind( "change", function(event, ui) {
console.log('Lang: '+$(this).val());
// Call function here
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20415 次 |
最近记录: |