我一直在寻找解决方案很长一段时间但找不到 解。请帮我找到解决方案。
我在x.aspx页面中有一个表单。表格在下面
<form name="add_fund_conf" runat="server" action="y.aspx" method="POST">
<div >
<b>Add Funds From:</b>
</div>
<div >
<select id="add_funds_from" runat="server" name="add_funds_from" >
<option value="">Select Gateway</option>
<option value="1">Perfect Money </option>
<option value="2">BitCoin </option>
<option value="3">Payeer </option>
</select>
</div>
<div>
<b>Amount To Add:</b> USD
</div>
<div>
<input type="text" id="amount_to_add" runat="server" value="" class="form-control" />
</div>
<div align="center">
<input type="submit" name="submit" class="btn btn-success" value="Add Funds" />
</div>
</form>
and these are the javascript functions in the head of the y.aspx page
<script language="JavaScript">
function PM() {
document._xclick.submit();
}
</script>
<script language="JavaScript">
function Payza() {
document.formPayza.submit();
}
</script>
<script language="JavaScript">
function Payeer() {
document.formPayeer.submit();
}
</script>
以下表格在正文部分
<form name="_xclick" id="_xclick" runat="server" action="https://perfectmoney.is/api/step1.asp" method="POST">
</form>
<form name="formPayza" id="formPayza" runat="server" action="https://www.coinpayments.net/index.php" method="post">
</form>
<form name="formPayeer" method="GET" action="https://payeer.com/merchant/">
</form>
在代码隐藏文件中我编写了以下代码。我一直在寻找解决方案很长一段时间但找不到 解。请帮我找到解决方案。
if (!IsPostBack)
{
NameValueCollection nvc = Request.Form;
int add_funds_from = Convert.ToInt32(nvc["add_funds_from"]);
int amount_to_add = Convert.ToInt32(nvc["amount_to_add"]);
if(add_funds_from==1)
{
ClientScript.RegisterClientScriptBlock(this.GetType(), "blah", "PM();", true);
}
else if (add_funds_from==2)
{
ClientScript.RegisterClientScriptBlock(this.GetType(), "blah", "Payza();", true);
}
else
{
ClientScript.RegisterClientScriptBlock(this.GetType(), "blah", "Payeer();", true);
}
}
但显示以下错误的页面
一个页面只能有一个服务器端的Form标签。描述:一个 在执行当前Web期间发生了未处理的异常 请求。请查看堆栈跟踪以获取有关的更多信息 错误以及它在代码中的起源。 异常详细信息:System.Web.HttpException:一个页面只能有一个服务器端的Form标记。
我是编码的新手。如果我犯了任何错误,请忽略。我一直在寻找解决方案很长一段时间但找不到 解。请帮我找到解决方案。
先谢谢你的帮助。
答案 0 :(得分:0)
一个选项是为每个表单创建单独的aspx页面,然后在主表单中使用iframe。
projectDir
另一方面,每个<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" Runat="Server">
<h1>Main Form</h1>
<iframe src="payza.aspx"></iframe>
<iframe src="payeer.aspx"></iframe>
etc.
</asp:Content>
必须具有唯一的名称。你有&#34; blah&#34;对于他们所有人,但他们都必须是不同的。
RegisterClientScriptBlock
也就是说,如果脚本要转到同一页面。如果你最终在iframe中使用不同的页面,那么它就不重要了。 (我想。也许使用不同的名字,所以它们是独一无二的。)