我正在开发一个现有项目,并被要求提供一些新功能。我是VB.net的新手。
我在aspx页面上创建了以下HTML表:
<asp:Repeater runat="server" id="DataGrid1" >
<HeaderTemplate>
<table id="pageviews" class="display">
<thead>
<tr>
<th>
User ID
</th>
<th>
Page Name
</th>
<th>
Page Views
</th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate >
<tr>
<td onclick="fnGetID(id)" id="<%#Eval("page_name") %>|<%#Eval("user_id") %>">
<%#Eval("user_id") %>
</td>
<td onclick="fnGetID(id)" id="<%#Eval("page_name") %>|<%#Eval("user_id") %>">
<%#Eval("page_name")%>
</td>
<td onclick="fnGetID(id)" id="<%#Eval("page_name") %>|<%#Eval("user_id") %>">
<%#Eval("Count") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate >
</table>
</FooterTemplate>
</asp:Repeater>
此表由VB.net对数据库的调用填充。我将表格的每一行的ID设置为&#39;用户名和页面名称&#39;为行。
该表显示用户名,页面名称和用户访问该特定页面的次数。
我希望用户能够点击表格的一行,然后使用新表格进入下一页。
新表格将显示用户访问该特定页面的日期和时间。
为了做到这一点,下一页将调用数据库,并需要知道用户名和页面名称。
我有一个JavaScript onClick方法,它会在警告框中显示用户名和页面名称,用管道分隔。方法如下:
function fnGetID(pUserID) {
alert(pUserID);
window.location.href = 'IndividualView.aspx'
}
目前,这个onClick还会将用户引导到下一页,其中将显示新表格,如上所述。
我的问题是,如何将变量传递到下一页,它必须以VB.net代码结束,因此它可以包含在查询中。
我试过了:
window.location.href = 'IndividualView.aspx?field1=UserID'
但是这不会传递变量,而是实际文本&#39; UserID&#39;。
即使这确实有效,我怎么才能从JavaScript到VB页面。
我已经搜索过但这个问题没有明确的解决方案。
答案 0 :(得分:0)
由于UserID
是变量
使用
window.location.href = 'IndividualView.aspx?field1=' + UserID;
在VB.NET中,您需要使用HttpRequest.QueryString属性
Dim field1 As String = Request.QueryString("field1")