0

3つの入力タイプの「テキスト」フィールドを含むaspグリッドビューがあります。これらのフィールドにはクエリが入力され、各行には編集するオプションがあります。グリッドビューの編集ボタンをクリックすると、ポストバックされますが、入力フィールドの値はポストバック中に失われます:(。したがって、値を非表示フィールドに保存して、サーバー側で使用したかったのです。これらはedititemtemplateタグ内。

<input type="text" id="editBeginDate" class="DatePicker" runat="server" readonly="readonly" />
<asp:HiddenField ID="ehBeginDate" runat="server" />

これを使用してjqueryを介してdocument.readyで非表示フィールドの値を設定しています...

      $(document).ready(function () {
        $("[id$=ehBeginDate]").val();
    });

ユーザーが[編集]をクリックすると、行が編集モードに設定されますが、ポストバックのどこかで「失われる」ため、これら3つの入力フィールドの値は空に設定されます。私の計画は、隠しフィールドの値を取得し(そして、世界を引き継ぐ!jk)、次に.findcontrol( "inputfield")を実行し、そのテキスト=hiddenfield.value...思考を設定することです。

4

2 に答える 2

0

私はそのイベントを使用し、グリッド内のコントロールを見つけて値をプルするためにこれを行っていますが、問題はこれです...このイベントをヒットすると、値は前に述べた入力コントロールからすでになくなっています....アイデア?

 Dim txtBeginDate As System.Web.UI.HtmlControls.HtmlInputText = gv.Rows(e.NewEditIndex).FindControl("editBeginDate")
于 2012-12-10T13:44:02.623 に答える
0

グリッドを作成するときに属性を使用している場合OnRowEditingは、イベントに入れることができる行が役立ちます。

これを行編集の最初の行として使用してみてください。次に、値を取得してプラグインすることにより、必要に応じてテキスト ボックスのセルを交換します。ASP Gridview にはデフォルトの編集機能が組み込まれていますが、テキスト ボックスを表示する前に値に依存するとは思いません。

編集イベントに追加する行

e.Cancel = true;

于 2012-12-07T21:28:57.817 に答える