能否在不嵌入任何控件的情况下,从JavaScript变量中获取一个值并将其用于Visual Basic代码中?
能否在不嵌入任何控件的情况下,从JavaScript变量中获取一个值并将其用于Visual Basic代码中?
如果没有服务器控件的帮助,您无法从codebehind访问js变量。 您可以将页面重定向到自身并将该值作为URL参数传递(window.location.href = window.location.href + "?value=test";
)。 但我认为这不是您想要的,因为它会强制进行postback。 因此,最好的方法是使用hiddenfield:
在javascript函数中:
<script type="text/javascript">
function Foo(){
var hidden=document.getElementById('hidValue');
hidden.value="test";
}
</script>
<Input id="hidValue" type="hidden" runat="server" />
Protected hidValue As HtmlControls.HtmlInputHidden
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim hiddenValue = hidValue.Value
End Sub
如果可能的话(如果可用),尝试在Java中为document.cookie = javavalue分配值,然后通过Web浏览器或页面从codebehind var x= document.cookie获取它。