2

aspxページのJSスクリプトからコードビハインドのc#にscreen.width vlaueを送信する「あらゆる」可能な方法を試しましたが、screen.widthが正しく割り当てられていることを確認できますが、非表示フィールドに割り当てられることはありません。価値。

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

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

   <script type="text/javascript" language="javascript">
       $(function(){ 
       $('#hiddenfield').val(screen.width); 
    });
    </script>

other content

</asp:Content>

と背後にあるコード:

protected void btnChartGo_Click(object sender, EventArgs e)
{
   string s = hiddenfield.Value;
}

何をしようともいつも「」

上記のどこかがおかしいのですが、誰もがそのようにやっているようで、うまくいきますか?

4

4 に答える 4

2

レンダリングされた非表示フィールドのIDは「hiddenfield」ではなく、ctl00_bodycontent_hiddenfieldのようになります。

使ってみてください

$('[id$="hiddenfield"]') 

代わりにセレクターとして。

于 2012-06-20T08:17:02.787 に答える
1
<asp:HiddenField ID="hiddenfield" runat="server" ClientIDMode="Static">
</asp:HiddenField >

ASP.NET 4を使用している場合、またはASP.NET 4を使用している場合は、非表示フィールドのクライアントIDモードが静的であることを確認してください。

$('#<%= hiddenfield.ClientID %>').val(screen.width); 
于 2012-06-20T08:20:39.403 に答える
0

これにより、適切なセレクターが得られます。

$('#<%= hiddenfield.ClientID %>').val(screen.width); 
于 2012-06-20T08:17:55.193 に答える
0

ページのビューソースを確認し、要素の適切なIDを見つけてから、jqueryセレクターを使用して、ページの読み込み時にrequest.formコレクションを確認し、非表示の変数がリクエスト後に送信されるかどうかを確認します

于 2012-06-20T08:19:59.960 に答える