jQuery .select有效,但Javascript .select不行

时间:2012-04-20 18:39:38

标签: javascript jquery windows-mobile internet-explorer-6

我正在为摩托罗拉/ 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

3 个答案:

答案 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()