0

空の値フィールドをチェックし、空のフィールドに関してユーザーに警告し、ユーザーが「OK」をクリックすると、フォーカスがテキストボックスに配置されるこの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>';

approvalClaim 関数の一部

 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;

奇妙なことに、アラート機能を削除すると、テキスト ボックスにフォーカスが置かれ、テキスト ボックスに何かを入力できるようになります。

ここで何か不足していますか?アラートを許可してからユーザーがテキストボックスに入力できるようにする方法はありますか?

4

2 に答える 2

1

フォーカスを設定した後にアラートを呼び出してみましたか?

また、document.activeElement を document.getElementById('glCode_'+i) に設定してみてください。

于 2013-08-05T20:15:37.337 に答える
0

これがあなたに当てはまるかどうかはわかりませんが、まったく同じ問題がありました。

私の問題は、何らかのクレイジーな理由でCSSにこれがあったことでした

-webkit-user-select: none;

...テキスト入力をクリックすることはできましたが、入力することはできませんでした。

于 2013-08-07T12:45:47.877 に答える