10

asp .net で jquery を使用して隠しフィールドの値を設定できません。

私の隠しフィールドは次のように宣言されています:

<asp:HiddenField runat="server" ID="hdnSelectedTicket" />

そして、これが私が値を設定する方法です:

            alert(ticketID);
            $('#<%=hdnSelectedTicket.ClientID %>').val(ticketID);
            alert($('#<%=hdnSelectedTicket.ClientID %>').val());

どちらのアラートにも正しい値が表示されますが、サーバーでフェッチすると空になります。

4

3 に答える 3

3

サーバー側で値を読み取る時期によっては、コントロールでまだ更新されていない可能性があります-基本的に、変更イベントハンドラーでそれを行っており、変更イベントを発生させるコントロールが非表示のコントロールの前に更新される場合、 hdnSelectedTicket.Value を呼び出しても、古い値を返すことができます。

この問題を回避する最も簡単な方法は、ごまかして Form コレクションから直接取得することです。

var ticketId = Request.Form[hdnSelectedTicket.UniqueID];
于 2013-06-26T12:24:24.003 に答える