0

グリッドビューに日付ボックスのユーザーコントロールがあり、プロパティの1つはRowIDです。Gridviewから、行IDを日付ボックスに次のように渡します。

<uc2:datePage1 ID="txtSubToSA" RowID=<%# Container.DataItemIndex %>   runat="server" Enabled="true" Text= '<%#Eval("SUBMITTED_TO_SA") %>' />

usercontrolのページロードで、次のようなjavascript関数を呼び出すための属性を追加しています。

protected void Page_Load(object sender, EventArgs e)
    {

        txtDate.Attributes.Add("onchange", "getRow(" + RowID + ")");

    }
  public int RowID
        {
            get;
            set;
        }

これで、グリッドビューの日付ボックスに変更を加えると、どの行であっても、常にRowIDが0になり、他の行で行った変更が認識されなくなります。私がここで間違っているのは何ですか?

4

2 に答える 2

0

代わりにこれを試すことができます-コードをから移動します

protected void Page_Load(object sender, EventArgs e)
{
    txtDate.Attributes.Add("onchange", "getRow(" + RowID + ")");
}

protected void Page_LoadComplete(object sender, EventArgs e)
{
    txtDate.Attributes.Add("onchange", "getRow(" + RowID + ")");
}

ページ読み込み完了イベントは、データが読み込まれた後に発生します。

于 2012-03-08T18:59:03.450 に答える