- PR -

Webアプリケーション Gridview 編集モードでのエンターキー

投稿者投稿内容
くまっち
大ベテラン
会議室デビュー日: 2008/01/18
投稿数: 169
お住まい・勤務地: 茨城県のどこか。
投稿日時: 2008-02-25 14:03
デザイナ上で、下記の様に記述しても構いません。
ただ、警告は表示されます。(onKeyDownは有効な属性ではない)
コード:

<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Value") %>'
onKeyDown="javascript:onKeyDownEvent(event);"></asp:TextBox>
</EditItemTemplate>


上記の場合、コントロール数が増えると、記述が大変になってしまうので・・・

下記のようにサーバーコード上でGridViewのRowDataBoundイベントハンドラにて
行の属性として設定するのがベストかと思います。
コード:

If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DataItemIndex = GridView1.EditIndex Then
e.Row.Attributes.Add("onKeyDown", "javascript:onKeyDownEvent(event);")
End If
End If



[編集]
javascript関数名ミス修正procNextCtrl->onKeyDownEvent

[ メッセージ編集済み 編集者: くまっち 編集日時 2008-02-25 14:05 ]
ぷり
ベテラン
会議室デビュー日: 2008/02/22
投稿数: 60
投稿日時: 2008-02-25 15:29
くまっち様

本当に感謝致します。

ご指導のおかげで、希望する動作が出来ました!!

テキストボックスがやや多めなので、

くまっち様のご提案通りRowDataBoundイベントハンドラを使用しました。

本当に親切にして頂いてありがとうございます。

また、不明点が出てくるとは思いますが宜しくお願い致します。

スキルアップ/キャリアアップ(JOB@IT)