我有这个BB10应用程序将检查空值字段,然后提醒用户关于空字段,一旦用户点击'确定',焦点将放在文本框中。我可以将焦点放在文本框中,但我无法在其中键入任何内容。
文本字段和按钮
strDetailClaim += '<div class="detailsRow">';
strDetailClaim += '<div class="detailsLabel">GL CODE</div><div
class="detailsValue"><input type="text" id="glCode_'+i+'"
name="glCode_'+referenceNo+'" size="9" value="'+detailsGLCode+'"></div>';
strDetailClaim += '<span class="spanApprove"><button id="approveButton"
class="formButton" type="button" ontouchstart="shadowHighlight(this)"
ontouchend="noShadowHighlight(this); setTimeout(function()
{approveClaim(\''+referenceNo+'\')},300)">APPROVE</div>';
approveClaim功能的一部分
alert("GL Code for claim number " + indieClaim[referenceNo].details[i].runno + " must
not be empty. Please key-in GL Code");
setTimeout(function(){document.getElementById('glCode_'+i+'').focus()},200);
return false;
奇怪的是,如果我删除了警报功能,我可以在文本框中获得焦点,并且可以在其中键入内容。
我在这里遗漏了什么吗?反正是否允许警报然后允许用户输入文本框?
答案 0 :(得分:1)
您是否尝试在设置焦点后调用警报?
还尝试将document.activeElement设置为document.getElementById('glCode _'+ i)?
答案 1 :(得分:0)
我不确定你是否属于这种情况,但我遇到了同样的问题。
我的问题是,出于某种疯狂的原因,我在CSS中有了这个
-webkit-user-select: none;
...允许我点击文字输入,但不允许我输入。