具体来说,我有一个ascx控件,我们假设它注入了javascript var x=5
。
ascx控件包含一个按钮,单击该按钮时会执行x ++;
然后是6。
当有人将我的控件放在他们的页面上,并点击一个回发的按钮(该按钮是他们自己的)时,我想让他们在后面的代码中检索x的值。
是否有允许这样的解决方案?我能想到的最接近的是在ascx中放置一个隐藏字段,并在更新时将值存储在隐藏字段中。然后在我的代码隐藏中,在回发时,我可以执行myControl.hiddenField.value来检索结果。
我还没有尝试过,因为我想知道是否有更好的方法。此外,我不确定隐藏字段的更新值是否会在通过javascript更改时注册,虽然是帖子,我希望它是。
思想?
编辑:事实上,使用getter我可以隐藏隐藏的字段,只允许直接访问该值...如果该解决方案是最好的...
答案 0 :(得分:1)
是的,你自己的答案是最好的答案......特别是你的编辑!表单字段是这两个层级如何相互通信的方式。您可以使用一些动态构建的get / post参数来调用ajax帖子,但这不会更好......
答案 1 :(得分:1)
您的想法已经是您可以采取的最佳方法。我不认为你可以使用Timbo提出的Ajax请求选项,因为你的ascx控件可以放在许多不同的形式中,你如何确定你发送帖子或获取请求?
总之,你的方法很好,没有任何低效率。