首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从EverCookie代码背后获取ASP.NET值

从EverCookie代码背后获取ASP.NET值
EN

Stack Overflow用户
提问于 2013-11-15 11:10:38
回答 1查看 832关注 0票数 0

我有一个https://stackoverflow.com/questions/19905901/mac-address-equivalent-to-identify-asp-net-websites-visitors来使用Evercookie,它在HTML页面中工作得很好,但是在回发后我无法从代码背后获得它的值。

我已经通过使用隐藏字段找到了解决办法,但是在回发之后它总是失去它的价值:

代码语言:javascript
复制
<input type="hidden" id="hfimageurl" name="hfimageurl" value="" />
<script>
    var ec2 = new evercookie();
    document.getElementById('hfimageurl').value = "User";
    ec2.get("id", function (value) { if (value == '10') {   
      document.getElementById('hfimageurl').value = "BadUser"; } 
    });

    ec2.get("id", function (value) { alert(value); });
</script> 

在回发后的码后,我总是得到val = '‘:

代码语言:javascript
复制
string val = Request.Form("hfimageurl");

if (val != "BadRequest") {
}

请注意,警报正确地显示了值。

我在这里错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-15 11:27:30

代码语言:javascript
复制
Add runat server to you input
<input type="hidden" id="hfimageurl" name="hfimageurl" value="" runat="server" />

在页面加载事件中,重新分配隐藏字段值,这样下次回发就不会丢失

代码语言:javascript
复制
protected void Page_Load(object sender, eventargs e)
{   
   if(Request.Form("hfimageurl") != null)
   {

      if(hfimageurl.Value == "")
      {
      hfimageurl.Value=Request.Form("hfimageurl");
      }
      else
      {
        //Check if there is a new value, if is, change the value to new one
        //Otherwise the value should be saved with postback, but it may be lost

        if(!hfimageurl.Value.Equals(Request.Form("hfimageurl"))
        {
           hfimageurl.Value=Request.Form("hfimageurl");
        }
      }

   }

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19999718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档