テキストボックスとボタンがあるページがあります。ページが読み込まれると、たびたびフォーカスがテキストボックスの1つに表示され、このようなことは起こりたくありません。しかし、ページロードイベントでsetfocusのようなものを使いたくないのは、ボタンをクリックするとページがジャンプするためです。ページの読み込みに重点を置くために、テキストボックスやコントロールを使用しないようにするにはどうすればよいですか?ページのテキストボックスがページロードに注目されているのはなぜですか?
答えて
strange。デフォルトでは、フォーカスを設定しない限り、ページはどのフォーム入力にもフォーカスしません。
私はあなたがページ上のSetfocusによってすべてのフォーカスをキャンセルしなければならないと思います。別のページからリダイレクト の結果として ページのロードが、ページは通常、任意のテキストボックスにちょうど 負荷をフォーカスを設定しないで ないとき
protected void Page_Load(object sender, EventArgs e)
{
// make sure its not a postback
if (!IsPostBack)
{
// your code
InitForm();
InitBlaBlaBla();
SetFocusOnThis();
SetFocusOnThat();
// cancel all focus
Focus();
}
else
{
// this is a postback,
// set focus on control which make post back
Control control = null;
if (!string.IsNullOrEmpty(Page.Request.Params[postEventSourceID]))
{
control = Page.FindControl(Page.Request.Params[postEventSourceID]);
}
else
{
// if postEventSourceID is null, its a button
// find it by iterating all controls
foreach (string ctl in Page.Request.Form)
{
Control c = Page.FindControl(ctl);
if (c is System.Web.UI.WebControls.Button)
{
control = c;
break;
}
}
}
// finally
control.Focus();
}
}
ページの読み込みを引き起こしたコントロールを検出できますか? – Joe
できますか。私は –
の私の答えを編集しますが、私はボタンonclickイベントを使用することをお勧めします。イベントハンドラメソッドでボタン送信者に焦点を合わせることができます。 –
は基本的に私が何をしたいのか、ですページの コントロールをクリックした結果、 ページが読み込まれた場合は、そのコントロールの上または近くにフォーカス を保持してください。あなたが戻ってポストをテストする必要があり、これを達成するために
。ページがポストバックされたことを検出した場合は、意図したとおりにコントロールにフォーカスを設定できます。それ以外の場合は、ページが再度ポストバック(GET)されないため、コントロールのフォーカスを避けることができます。
私が知る限り、既定では、ASP.NET Webformはtextbox
のいずれにも焦点を当てません。 textbox
に焦点を合わせるコードビハインド方法がないのは確かですか?
私はfreetextboxを使用していますので、これはfreetextboxの問題です。ポストバックでない場合、ページのロードイベントを引き起こしたコントロールにフォーカスを設定できますか? – Joe
freetextboxコントロールがIE7とIE6でこの動作を示すことが判明しました。彼らが調査しているバグです。
- 1. テキストボックスにデータが入力されないのはなぜですか?
- 2. Redisに注文されたハッシュマップがないのはなぜですか?
- 3. なぜ私のページにfbevents.jsがロードされていますか?
- 4. 2ページ目以降のLaravelページネーションの結果にjQueryが適用されないのはなぜですか?
- 5. Spring BeanがCXF Webサービスに注入されていない、なぜですか?
- 6. なぜグリフィコンがブートストラップのテキストボックスに表示されないのですか?
- 7. edmxダイアグラムでデータ注釈が作成されないのはなぜですか?
- 8. ページロード後にプロセスが停止しないのはなぜですか? - Django
- 9. ページロードのリクエストに時間がかかるのはなぜですか?
- 10. クロムエクステンションが呼び出された元のページのタブに注目しますか?
- 11. 大きなテキストボックスがSSRSの2ページ目に配置されないようにする
- 12. なぜインターフェイスが注入されるのですか?
- 13. ページを閉じてもコンポーネントがアンマウントされないのはなぜですか
- 14. テキストボックスにゴースト値が表示されるのはなぜですか? HTML5/PHP
- 15. なぜこのWinFormsアプリケーションのテキストボックスが壊れていますか?
- 16. Angular2 Componentのプロパティがページに表示されないのはなぜですか?
- 17. jqueryのデータがHTMLページに表示されないのはなぜですか?
- 18. なぜ新しいページにリダイレクトされないのですか?
- 19. 角度ブートストラップが注入されないのはなぜですか?
- 20. エラーが発生していないのに、ページがリダイレクトされないのはなぜですか?
- 21. aspnetテキストボックスの高さをページロード時のテキストに基づいて設定する
- 22. ページ分割によってドロップダウンリストフィルタがリセットされるのはなぜですか?
- 23. javascript:ページのすべてのフォームがリセットされるのはなぜですか?
- 24. SailsJSではデフォルトのミドルウェアの注文設定がデフォルトでコメントアウトされているのはなぜですか?
- 25. 画像スライダに白いページが表示されるのはなぜですか?
- 26. 2番目のifelseが評価されないのはなぜですか?
- 27. 2番目のラベルが更新されないのはなぜですか?
- 28. モデルとビューオブジェクトがJSPページに表示されないのはなぜですか?
- 29. テキストフィールドがページに追加されないのはなぜですか?
- 30. リンク先ページにCookieが表示されないのはなぜですか?
基本的には、別のページからリダイレクトした結果、ページが読み込まれたときに、テキストボックスにフォーカスを設定せず、通常はページを読み込むだけですが、ページ上のコントロール、そのコントロールの上または近くでフォーカスを維持します。 – Joe