我有一個Web應用程序,它有一個從數據庫加載內容的頁面。我希望能夠在動態內容中放置表單,但.net不會讓內部表單執行動作。有沒有辦法讓這個或其他方式我可以在動態內容頁面上獲取表單?ASP.net上的表單標籤頁
謝謝。
- EDIT--
我想我需要澄清一些事情。這是從數據庫加載內容的aspx頁面。據我所知,我從數據庫中拉出的文本並粘在標籤中永遠不會被.net wp編譯或處理,因此我不能使用後面的代碼來解決此問題。
我有一個Web應用程序,它有一個從數據庫加載內容的頁面。我希望能夠在動態內容中放置表單,但.net不會讓內部表單執行動作。有沒有辦法讓這個或其他方式我可以在動態內容頁面上獲取表單?ASP.net上的表單標籤頁
謝謝。
- EDIT--
我想我需要澄清一些事情。這是從數據庫加載內容的aspx頁面。據我所知,我從數據庫中拉出的文本並粘在標籤中永遠不會被.net wp編譯或處理,因此我不能使用後面的代碼來解決此問題。
只能有頁面(ASP窗體)的一種形式;你必須以某種方式使用該表格。
要澄清,只能處理一個表單。
不適用於webforms,no。您必須使用連接到Button
到LinkButton
的事件處理程序在一個完整頁面表單中工作。幸運的是,這是很容易做到:
foo.aspx:
...
<asp:TextBox id="txtFoo" runat="server" />
<asp:Button id="btnFoo" runat="server" onclick="btnFoo_Click />
...
foo.aspx.cs:
...
protected void btnFoo_Click(object sender, EventArgs e)
{
string s = txtFoo.Text;
// do something with s
}
...
你要麼通過添加一個服務器端點擊事件處理程序來處理你想成爲「子表單」提交按鈕(這是web formas如何處理同一頁面上的多個提交類型buutons)或者,如果你不想一個完整的回發
我碰到這個問題之前運行做soemthing巧妙搭配AJAX。我所做的一個解決方法是將我的代碼放置在asp:Panel內部,讓我的操作完成。通過面板,您可以將「DefaultButton」的屬性設置爲面板內的按鈕,然後單擊按鈕(或按「enter」)將觸發該按鈕的單擊事件。當我有一個包含唯一允許的asp:Form的母版頁時,通過按Enter提交「表單」時,我發現這非常方便。
希望這會有所幫助。
這是一個常見問題,當你想要一個非回發形式到第三方網站(例如貝寶按鈕)。
問題發生是因爲HTML不允許您在窗體中創建窗體,並且大多數ASP.NET頁面在HTML(或主頁面)中都有一個<form runat="server" />
「high up」。
我最喜歡的解決辦法是隱藏「高達」的形式標記,而仍然顯示的所有內容。然後你可以隨意轉換任何你想要的身體標籤。如果您動態執行此操作,則可以逐頁選擇哪些頁面具有自定義表單。
我創建了一個名爲GhostForm.cs的類來處理這個問題。你可以在這裏閱讀所有關於它:
http://jerschneid.blogspot.com/2007/03/hide-form-tag-but-leave-content.html
迪諾·埃斯波西託已經從MSDN雜誌覆蓋處理多種形式或「模擬」在ASP.Net子的形式,可能只是回答你所有的問題的文章。
任何解決辦法將是哈克和非常難看。按照設計asp.net使用窗體標籤發佈和獲取數據。這就是爲什麼他們把它叫做Web窗體應用程序。 Html不允許嵌套窗體。你想要做的是在你的代碼中使用的WebRequest後面。
如果你試圖像PayPal按鈕的東西,你可以簡單地使用這樣的事情。
標記:
<div id="PayPalButtonContainer" runat="server"></div>
代碼背後:
public static string GetPayPalButtonMarkup()
{
const string markup = @"https://www.paypal.com/cgi-bin/webscr
?cmd=_xclick&business={0}
&item_name=Widget
&amount={1}
¤cy_code=USD";
return markup;
}
PayPalButtonContainer.InnerHtml = string.format(GetPayPalButtonMarkup,"YOUR PAYPAL USER NAME", "YOUR PRICE VALUE");
當我第一次遇到這個問題來了,我發現最簡單的解決方案對我來說是簡單的複製和粘貼母版頁,並給它稍有不同的名稱,像:
SiteNameMasterPage 'Default page with FORM tag
SiteNameMasterPageNF 'No Form tag
然後根據不同羯羊我想ED FORM標記或者與否,只需更改母版鏈接我的內容,頁面的頂部,這樣
<%@ Page Title="" Language="VB" MasterPageFile="~/SiteName.master" %>
<%@ MasterType VirtualPath="~/SiteName.master" %>
<!-- This masterpage has the default FORM tag -->
或
<%@ Page Title="" Language="VB" MasterPageFile="~/SiteNameNF.master" %>
<%@ MasterType VirtualPath="~/SiteNameNF.master" %>
<!-- This masterpage does NOT have the default FORM tag -->
,然後在內容頁面,只要我想放置我的表單我可以包括<form>
標記
愚蠢,愚蠢,webforms – annakata 2009-05-29 15:25:34