我有一个最初禁用的输入文本框。
<input type="text" name="count" id="count" value="0" disabled="true" data-theme="b" />
当我选中一个单选按钮时,我想启用并聚焦文本框,但是当我单击单选按钮时,它会启用文本框并聚焦其他文本框。我认为它不起作用,因为文本框最初被禁用,你无法聚焦禁用的输入。
$(":input[@name='radio']").live('change', function() {
$(":input[@name='count']").removeAttr("disabled").focus();
});
如何启用文本框然后将其对焦?
答案 0 :(得分:3)
看起来选择器出了问题...虽然文本输入框已启用,但我没有集中注意力,而我尝试了:
$(":input[@name='count']").removeAttr("disabled").focus();
但是当我尝试这个时,它起作用了:
$("#count").removeAttr("disabled").focus();
我无法解释为什么会发生这种情况......
修改强> 它与选择器有关,因为它也适用:
$("input[name='count']").removeAttr("disabled").focus();
但是我仍然无法理解为什么使用第一个选择器,文本框被启用,但没有聚焦......
答案 1 :(得分:1)
尝试以下代码
$('#count').textinput('enable').focus();
答案 2 :(得分:0)
答案 3 :(得分:0)
你必须在pageshow上进行。
$("#mainPage").on("pageshow", function (e) {
$('#searchField').focus();
});
在
<body class="ui-mobile-viewport ui-overlay-c">
<div data-role="page" data-add-back-btn="true" id="mainPage">
<div data-role="header" data-theme='b'>
<input type="text" id="searchField" placeholder="Search" />
</div>
</div>
</body