2017-03-07 119 views
0

好了,所以我有一个生成的样式列表项href定位标签,并​​把它扔了到像这样的aspx页面一些C#;如何将变量传递给另一个ASP.net页

html += "<a href='../InspectionView.aspx' class='list-group-item' id=''>Inspection ID: " + inspectionID + " - Due Date: " + inspDueDate + " - Inspector(s): Bob Williams <span style='min-width:75px' class='label label-primary pull-right'>" + status + "</span></a>"; 

现在这是一个循环,变量从SQL数据库中提取并用于填充该html字符串。

现在,我想要做的是有这么当用户点击产生的HREFs之一,并被重定向到下一个页面,该变量inspectionID传递着。我想可能有某种方式将其存储在href标签的ID,但我不知道从哪里里去。

非常感谢。

+1

您正在寻找的概念被称为“查询字符串” – mason

+0

您需要在该行中构建要传递的id ...在URL的末尾添加?inspectionID ='insert value here'。如果您有多个值,那么在每个键/值对之后添加“&nextValue =” – logixologist

回答

4

添加query string参数。

html += "<a href='../InspectionView.aspx?inspectionID='" + inspectionID + " class='list-group-item' id=''>Inspection ID: " + inspectionID + " - Due Date: " + inspDueDate + " - Inspector(s): Bob Williams <span style='min-width:75px' class='label label-primary pull-right'>" + status + "</span></a>"; 

用于读取接收页:

string inspectionID = Request.QueryString["inspectionID"]; 

https://msdn.microsoft.com/en-us/library/system.web.httprequest.querystring(v=vs.110).aspx

+0

以及如何在接收页面上阅读此内容?代码请求中的 – mason

+0

[“variableName”];假设你正在使用C# – logixologist

+0

谢谢,这是伟大的。 –

1

一个很简单的方法就是坚持到查询字符串。由于这不是服务器控制,它可能是唯一的方法。

像...

html += "<a href='../InspectionView.aspx?InspectionID="+HttpUtility.UrlEncode(Inspection_ID.ToString())+"&anyotherQSField="+HttpUtility.UrlEncode(anyotherQSFieldVariable) + "' class='list-group-item'> - Due Date: " + inspDueDate + " - Inspector(s): Bob Williams <span style='min-width:75px' class='label label-primary pull-right'>" + status + "</span></a>"; 

然后在InspectionView.aspx,获得价值的东西,如:

String strInspection_ID = Request.QueryString["InspectionID"]; 

您可能需要转换为字符串此为ID的工作。 您不必为Inspection_ID使用HttpUtility.UrlEncode,但是如果您想在QS中使用其他字符串(可能包含空格或其他奇数字符) - 这将是明智之举。

相关问题