1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace Alipay.EasySDK.Kernel.Util
- {
- /// <summary>
- /// 生成页面信息辅助类
- /// </summary>
- public static class PageUtil
- {
- /// <summary>
- /// 生成表单
- /// </summary>
- /// <param name="actionUrl">表单提交链接</param>
- /// <param name="parameters">表单参数</param>
- /// <returns>表单字符串</returns>
- public static string BuildForm(string actionUrl, IDictionary<string, string> parameters)
- {
- return "<form name=\"punchout_form\" method=\"post\" action=\""
- + actionUrl
- + "\">\n"
- + BuildHiddenFields(parameters)
- + "<input type=\"submit\" value=\"立即支付\" style=\"display:none\" >\n"
- + "</form>\n"
- + "<script>document.forms[0].submit();</script>";
- }
- private static string BuildHiddenFields(IDictionary<string, string> parameters)
- {
- if (parameters == null || parameters.Count == 0)
- {
- return "";
- }
- StringBuilder stringBuilder = new StringBuilder();
- foreach (var pair in parameters)
- {
- if (pair.Key == null || pair.Value == null)
- {
- continue;
- }
- stringBuilder.Append(BuildHiddenField(pair.Key, pair.Value));
- }
- return stringBuilder.ToString();
- }
- private static string BuildHiddenField(string key, string value)
- {
- StringBuilder builder = new StringBuilder(64);
- builder.Append("<input type=\"hidden\" name=\"");
- builder.Append(key);
- builder.Append("\" value=\"");
- //转义双引号
- String a = value.Replace("\"", """);
- builder.Append(a).Append("\">\n");
- return builder.ToString();
- }
- }
- }
|