我正在为摩托罗拉/ IE 6设备构建移动网站。
由于某种原因,我无法想出,jQuery的.select()函数正在运行,但是直接在javascript中调用它不是。
<input type="text" id="lid" value="" class="as_done">
有效的jQuery方式是:
$('#lid').select();
不行的方式是:
document.getElementById('lid').select();
这让我有种各样的困惑。关于这是为什么的任何想法?
编辑:我不想在jQuery中做任何事情。我只是想在输入框中选择文本。我不应该需要jQuery这样做,但标准方法不起作用。 http://www.w3schools.com/jsref/met_text_select.asp答案 0 :(得分:1)
$()函数返回一个jquery对象,而document.getElementById返回一个简单的DOM对象。
答案 1 :(得分:1)
有趣的改变使它对我有用。也许这是Windows Mobile IE 6中的一个错误?
考虑以下html:
<input type="hidden" id="lid_as" name="lid" value="1">
<input type="text" id="lid" value="" class="as_done">
致电alert("document.getElementById('lid').name");
会收到消息lid
。这让我觉得它抓住了第一个ID实际上是lid_as的输入框。
当我移动lid_as
框下方的lid
输入时,select
功能正常运行。
所以这个HTML让它起作用了:
<input type="text" id="lid" value="" class="as_done">
<input type="hidden" id="lid_as" name="lid" value="1">
同样,这个问题与WINDOWS MOBILE IE 6有关。
答案 2 :(得分:0)
可能是因为你事先没有调用.focus()
document.getElementById('lid').focus();
document.getElementById('lid').select();
这包含在jQuerys .select()
中