使用 JavaScript 从 aspx 页面传递变量值到 VB.net 页面
Pass variable value from aspx page using JavaScript, to VB.net page
我正在处理现有项目,并被要求提供一些新功能。我是 VB.net.
的新手
我在 aspx 页面上创建了以下 HTML table:
<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>
此 table 由对数据库的 VB.net 调用填充。我将 table 的每一行的 ID 设置为该行的 'username and page name'。
table 显示用户名、页面名称和用户访问该特定页面的次数。
我希望用户能够单击 table 的一行,然后进入带有新 table 的下一页。
新的 table 将显示用户访问该特定页面的日期和时间。
为此,下一页将调用数据库,并且需要知道用户名和页面名称。
我有一个 JavaScript onClick 方法,它会在警告框中显示用户名和页面名称,用竖线分隔。方法如下:
function fnGetID(pUserID) {
alert(pUserID);
window.location.href = 'IndividualView.aspx'
}
目前,这个 onClick 还会将用户定向到下一页,新的 table 将在该页面显示,如上所示。
我的问题是,如何将变量传递到下一页,它必须在 VB.net 代码中结束,以便可以包含在查询中。
我试过:
window.location.href = 'IndividualView.aspx?field1=UserID'
但这不会传递变量,而是实际的文本'UserID'。
即使这确实有效,我又如何将它从 JavaScript 获取到 VB 页面。
我已经搜索过了,但是没有明确解决这个问题的方法。
因为UserID
是一个变量
使用
window.location.href = 'IndividualView.aspx?field1=' + UserID;
在VB.NET中你需要使用HttpRequest.QueryString属性
Dim field1 As String = Request.QueryString("field1")
我正在处理现有项目,并被要求提供一些新功能。我是 VB.net.
的新手我在 aspx 页面上创建了以下 HTML table:
<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>
此 table 由对数据库的 VB.net 调用填充。我将 table 的每一行的 ID 设置为该行的 'username and page name'。
table 显示用户名、页面名称和用户访问该特定页面的次数。
我希望用户能够单击 table 的一行,然后进入带有新 table 的下一页。
新的 table 将显示用户访问该特定页面的日期和时间。
为此,下一页将调用数据库,并且需要知道用户名和页面名称。
我有一个 JavaScript onClick 方法,它会在警告框中显示用户名和页面名称,用竖线分隔。方法如下:
function fnGetID(pUserID) {
alert(pUserID);
window.location.href = 'IndividualView.aspx'
}
目前,这个 onClick 还会将用户定向到下一页,新的 table 将在该页面显示,如上所示。
我的问题是,如何将变量传递到下一页,它必须在 VB.net 代码中结束,以便可以包含在查询中。
我试过:
window.location.href = 'IndividualView.aspx?field1=UserID'
但这不会传递变量,而是实际的文本'UserID'。
即使这确实有效,我又如何将它从 JavaScript 获取到 VB 页面。
我已经搜索过了,但是没有明确解决这个问题的方法。
因为UserID
是一个变量
使用
window.location.href = 'IndividualView.aspx?field1=' + UserID;
在VB.NET中你需要使用HttpRequest.QueryString属性
Dim field1 As String = Request.QueryString("field1")