<分区>
您好,我正在尝试在我的 Controller 中调用一个包含参数的操作结果,但是只要其中一个参数包含 # 符号(特殊字符),字符串参数不包含 # sing in 参数,接下来所有参数都设置为 null。
以下是我调用操作结果的 java 脚本。
<script type="text/javascript">
$(document).ready(function () {
$('#btnExport').unbind().click(function () {
var url = @Url.Content("~/BankStatement/ExportBankStatementSummary") +
"?legalName=" + '@ViewBag.LegalName' +
"&dba=" + '@ViewBag.DBA' +
"&contactPerson=" + '@ViewBag.ContactPerson' +
"&address=" + '@ViewBag.Address' +
"&period=" + '@ViewBag.Period' +
"&totalHeading=" + '@ViewBag.TotalHeading';
window.location = url;
});
});
</script>
这是在此 java 脚本中调用的操作结果
public ActionResult ExportBankStatementSummary(string legalName, string dba,
string contactPerson, string address,
string period, string totalHeading)
{
ViewBag.LegalName = legalName;
ViewBag.DBA = dba;
ViewBag.ContactPerson = contactPerson;
ViewBag.Address = address;
ViewBag.Period = period;
ViewBag.TotalHeading = totalHeading;
...
问题在于,在操作结果参数中,只要任何参数包含任何特殊字符(在本例中为#),那么该参数和下一个参数就会变为空。
例如,如果地址是“Street # 2”,则参数地址变为“Street”,下一个参数 period 和 totalHeading 变为空。
我们将不胜感激任何帮助。
提前致谢。
[我不同意这个问题的重复,因为标记重复的问题已经详细讨论了,详细的对话涵盖了这个问题的答案,但实际问题与这个问题完全不同。]