我有一个谷歌结帐“立即购买”按钮,我正在尝试添加动态创建的内容,以便在点击时发送。使用原始的html证明有点困难所以我想创建一个ASP.Net ImageButton
而不是那个。
我已经成功创建了具有正确图像的按钮,并将其挂钩到代码隐藏中的事件处理程序。
但是,我不确定单击原始按钮时到底发生了什么,以便尝试在新ImageButton
中模拟它。
原始代码是:
<form action="https://sandbox.google.com/checkout/..." id="Form1" method="post" name="..." target="_top">
<input name="item_name_1" type="hidden" value="..." />
...
<input alt="" src="https://sandbox.google.com/checkout/buttons/buy.gif?merchant_id=..." type="image" />
</form>
我想放置一个动态创建的item_name_1
。
我需要在Button1_Click
方法中做些什么?
答案 0 :(得分:1)
简短,简洁且有用的版本:
HTML:
<form id="__parent" action="..." method="post" runat="server">
<input id="__child0" name="type" type="hidden" value="button" runat="server" />
<input id="__child1" name="name" type="hidden" value="teh_button" runat="server" />
<input id="__child2" name="value" type="hidden" value="Hello?" runat="server" />
</form>
tehfile.cs:
<%@ Page Language="C#" CodeFile="tehfile.cs" %>
String
_type = __child0.Value,
_name = __child1.Value,
_value = __child2.Value,
_element = String.Format(
"<{0} {1}=\"{2}\" {3}=\"{4}\" {5}=\"{6}\" />",
"input",
"type", _type,
"name", _name,
"value", _value );
Literal _lit = new Literal( );
_lit.Text = _element;
__parent.AddControl( _lit );
答案 1 :(得分:1)
要将该数据发布到ASP.NET服务器端的其他服务器,您将需要使用类似WebRequest类的内容。
答案 2 :(得分:1)
或者也是为了发布表单,您可以像这里的任何一个一样使用远程帖子类:Remote HTTP Post with C#,@ BobbyShaftoe的答案是我在许多项目中使用的答案。
答案 3 :(得分:0)
同一问题/ POST here。我会评论而不是回答,但似乎这是一种更好/格式化的方式来深究这一切:
在你对@ MarcusHansson回答的评论中:
我没有看到这是如何解决如何使用代码隐藏来发送信息的问题
您正在将服务器端与客户端提交方法混合使用。
如果要使用“代码隐藏”提交,则必须实现服务器到服务器HTTP Post。在Google Checkout的上下文中,我在您的其他帖子中提供了该链接。
您的客户端正在使用HTML表单,其本身就是您“发送数据”的方式。您可以尝试各种客户端提交过程,但在一天结束时,它是一个客户端(Javascript)方法。
现在购买按钮的“动态”是什么?这意味着购买单件商品(一次)。为什么不能在创建按钮的同时构造所需的所有变量?你在添加什么(需要另一个重定向或回发)?