我需要在主頁面加載之前從JavaScript的值,然後希望在代碼中使用該值。我正在使用的代碼是:我需要一個JavaScript的值,然後在主頁面加載,然後想要在代碼中使用該值
我已經做了一個test.aspx頁面。對於該代碼如下: -
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title> <script type="text/javascript" language="javascript">
function GetScreenHeightAndWidth()
{
var width = screen.width;
var height = screen.height;
var object = 'Label1';
document.getElementById(object).innerHTML=height ;
//alert(height);
'<%Session["Screensize"] = "' + height +'"; %>' ;
}
</script>
</head>
<body onload="GetScreenHeightAndWidth();" >
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="test"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>
</form>
</body>
</html>
爲test.aspx.cs頁面的代碼如下: -
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Windows.Forms;
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Session["Screensize"] = Label1.Text;
TextBox1.Text=Session["Screensize"].ToString();
}
}
的結果如下: -
768測試
而導致我需要的是768和768。
有什麼辦法來解決這個問題?
這是不可能的。在C#代碼已經完成運行之後,客戶端上的JavaScript只能在服務器上運行。 – bfavaretto 2012-04-18 14:08:14
在這種情況下,是否有任何解決方案此問題 – 2012-04-18 14:11:00
@JohnSaunders:你是使用標籤的堅持者:) – 2012-04-18 14:13:32