0

我在画布上有一个讲话泡泡(气球)。我允许用户单击此气球以查看有关气球的更多信息。

当用户单击时,会弹出一个新页面,我想将 mem_ID 发送到新页面,以便我可以在新页面上进行查询并在新页面上发布有关成员的数据。

      // listen for clicks on the balloon, opens a hyperlink attached to the balloon. 
             $("#balloon").click(function popMessage(e) {
                 $("#balloon").hide();

                 // hyperlink opens a new window upon click on the bubble
                 return !window.open('About.aspx?mem_ID' + mem_ID, "pop", "width=1000,height=900"); 

             });

所以这就是我计划将 member_ID 发送到新页面的方式。

现在我怎样才能在新页面上检索它,以便我可以用它做点什么?

我在新页面上有一个文本框,想打印此 ID 以检查它是否正在传输:-

<script type="text/javascript">




    var id = <%=Request["mem_ID"]%>

    document.getElementById('<%=TextBox1.ClientID%>').value = id;




</script>

它在文本框中显示为“未定义”.....有什么帮助吗?

4

2 回答 2

1
window.open('About.aspx?mem_ID'

应该

window.open('About.aspx?mem_ID='

但是,您不想这样传输它,因为它会通过 url 将敏感数据暴露给攻击者:要么在第一次收到它时检查服务器端的 id,要么在用户登录时将其存储在会话状态中。

更新:

您的子页面:

var id = <%=Request["mem_ID"]%>

应该

var id = "<%=Request["mem_ID"]%>";

此外......攻击者也可以是内部的......对于内部应用程序,会话状态是实现基本跨页面数据完整性的最简单方法。

于 2013-05-15T18:39:30.957 回答
1

试试这个::

document.getElementById('<%=TextBox1.ClientID%>').value = '<%=Request["mem_ID"]%>';

这将解决您的问题。

于 2013-05-15T18:11:44.577 回答