1

私は次の ASPX ソースを持っていません:

  <form name="AddComment" action="ViewArticle.aspx?ArticleID=<%=ArticleID %>" method="post" runat="server">

問題は、送信をクリックすると、このURLを取得したことです

http://localhost:61175/WebSite1/ViewArticle.aspx?ArticleID=%3C%=ArticleID%20%%3E

しかし、私はこのURLを取得したい:

http://localhost:61175/WebSite1/ViewArticle.aspx?ArticleID=1

「runat="server"」コマンドを削除すると正常に動作ますが、このフォームは変数と runat サーバーで同時に動作できますか?

4

2 に答える 2

1

おそらく、このようなフォーム マークアップの直前にアクションを設定してみることができます (またはコード ビハインドで、選択した場合)。

 <%
     this.Form.Action = "ViewArticle.aspx?ArticleID=" + ArticleID.ToString();
 %>
 <form name="AddComment"  method="post" runat="server">
于 2013-03-20T16:36:07.193 に答える
1

サーバー側のコントロールでは、<%= ActionID %> のようなことはできません。バインドできるのは <%# ActionID %> だけです。

フォームがそのフォームではないため、上のソリューションは機能しません。投稿 URL を設定するよりも、コントロール ID と名前を指定する必要があります。オプションでない場合は、コントロール ツリーでフォーム アイテムを動的に検索できるため、動的 ID を処理できます。

于 2013-03-20T16:44:49.617 に答える