首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery Mobile -电台组更改

Jquery Mobile -电台组更改
EN

Stack Overflow用户
提问于 2011-04-29 19:49:49
回答 4查看 12.8K关注 0票数 5

我确信我遗漏了一些非常明显的东西,因为我是Jquery的新手。我正在使用带有以下标记的Jquery Mobile:

代码语言:javascript
复制
<div>
    <input data-theme="c" type="radio" name="radio-choice-1" id="radio-choice-1" value="choice-1" />
    <label for="radio-choice-1">Option 1</label>
</div>
<div>
    <input data-theme="c" type="radio" name="radio-choice-1" id="radio-choice-2" value="choice-2"  />
    <label for="radio-choice-2">Option 2</label>
</div>
<div>
    <input data-theme="c" type="radio" name="radio-choice-1" id="radio-choice-3" value="choice-3"  />
    <label for="radio-choice-3">Option 3</label>
</div>

当值发生变化时,我正在尝试执行一个操作。

所以我有:

代码语言:javascript
复制
$(":input[@name='radio-choice-1']").change(function() {
        alert('clicked');
});

现在,当我第一次选择一个选项时,事件不会触发。当我随后更改它时(例如,第二次、第三次等),但不是第一次,它就会触发。我认为这是因为它本身并没有被“改变”,只是被赋予了一个值。我试着把它改成click,但它永远不会触发。

这里我漏掉了什么?任何帮助都非常感谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-29 20:00:51

我想这会有帮助的

代码语言:javascript
复制
$(document).ready(function() {

$(":input[@name='radio-choice-1']").live('change mousedown',function(event) { 
        alert('clicked'); 
}); 

});

此处的工作示例http://jsfiddle.net/XVuAs/1/

票数 4
EN

Stack Overflow用户

发布于 2011-04-29 20:52:14

现场示例:http://jsfiddle.net/wWFGf/2/

替代超文本标记语言语法:http://jsfiddle.net/wWFGf/3/

代码语言:javascript
复制
$("[name=radio-choice-1]").change(function() {
    alert('Selected: '+$('input[name=radio-choice-1]:checked').val());
});
票数 13
EN

Stack Overflow用户

发布于 2011-04-29 20:04:50

代码语言:javascript
复制
$('input[type="radio"]').change( function() {
        alert('clicked');
});

上面的代码,测试和工作良好,为我…

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5831615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档