1

ASPXページでデフォルトのボタンを設定しようとしています。マスターページがあるので、フォームがあります。コンテンツページに、いくつかのテキストボックス、ドロップダウン、およびその他の入力を整理するテーブルを保持するパネルがあります。表の最後の行にはいくつかのボタンがあり、そのうちの1つをデフォルトのボタンにします。いくつかの調査を行った後、私は次のことを試みましたが成功しませんでした。

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If Not IsPostBack Then
       pnlHolder.DefaultButton = cmdSearchJob.ClientID

私も試しました

pnlHolder.DefaultButton = cmdSearchJob.UniqueID

Dim cmdDef As Button = pnlHolder.FindControl("cmdSearchJob")
pnlHolder.DefaultButton = cmdDef.UniqueID

ただし、どちらも例外をスローします。「'pnlHolder'のDefaultButtonは、タイプIButtonControlのコントロールのIDである必要があります。」

私はいくつかのJavascriptソリューションを見てきましたが、パネルのdefaultButtonを設定できることを望んでいました。

4

4 に答える 4

2

DefaultButton親フォームのを設定してみてください。

C#:

 this.Page.Form.DefaultButton = cmdSearchJob.UniqueID;

VB ?:

me.Page.Form.DefaultButton = cmdSearchJob.UniqueID

ここで同様の問題:Enterキーでasp.netにログインできるようにしますか?

于 2010-07-22T20:45:00.547 に答える
0

次のように設定してみてください。

cmdSearchJob.ID

パネルはFindControlを呼び出して、クライアントID自体を取得します

于 2010-07-22T20:25:12.780 に答える
0

これをフロントエンドのコントロール内に設定できますか?

<asp:Panel id="pnlHolder" DefaultButton="cmdSearchJob">
<asp:Button id="cmdSearchJob" runat="server" Text="Search" />
</asp:Panel>

また、これは知っておく価値があるかもしれませんが、cmdSearchJobはどのタイプのオブジェクトですか?これは標準のasp.netボタンコントロールですか?

于 2010-07-22T21:05:01.670 に答える
0

ついにそれが何であるかを見つけました。テストのためにjavacsriptalert()をポップアップするCSSなどのない別のボタンを追加しようとしました。それがテーブルの外にあるとき、それをデフォルトのボタンとして設定することができました。送信ボタンはテーブル内の一連のボタンの1つであるため(あまりきれいなUIではありませんが、ユーザーの要件など)、この追加のボタンを使用して、そのスタイルをdisplay:noneに設定し、同じサブルーチンを呼び出します。背後にあるコード。

だから、簡単に言えば、それはテーブルに表示されていませんでした。

ご意見ありがとうございます。

なぜボタンが設定されないのか、まだわかりません。

于 2010-07-23T14:22:11.547 に答える