解決方案1: - 在客戶端創建隱藏字段變量。
.aspx文件: -
<asp:HiddenField ID="hdncustomerID" runat="server" />
腳本: -
<script type="text/javascript">
var hdncustomerID = $('hdncustomerID').Val(); //if u use Jquery
$(document).ready(function() {
if ($(window).width() < 700) {
window.location = mobile.aspx?customerID=123;
}
});
</script>
解決方案2: -
protected void Page_Load(object sender, EventArgs e)
{
var CustomerID = 1;
StringBuilder strScript = new StringBuilder();
strScript.Append("<script type=\"text/javascript\">");
strScript.Append("$(document).ready(function() {");
strScript.Append("if ($(window).width() < 700) {");
strScript.Append("window.location = mobile.aspx?customerID='");
strScript.Append(CustomerID);
strScript.Append("';");
strScript.Append("}");
strScript.Append(" });");
strScript.Append("</script>");
ClientScriptManager script = Page.ClientScript;
script.RegisterClientScriptBlock(this.GetType(), "redirect", strScript.ToString());
}
希望它的工作!
爲什麼需要在代碼背後而不是客戶端?你可以使用JQuery。如果您需要它回到服務器,您可以使用AJAX將屏幕大小傳回服務器 – Alex
@Alex請向我展示一些虛擬代碼,我可以在其中解析jquery值以便在代碼隱藏文件中進行字符串處理。 – SUN
您可以使用用戶的解決方案設置cookie,並在代碼中使用該cookie,無需使用AJAX(取決於用例)。但請注意,700px是確定手機的任意數字。例如,我的手機具有比這更多的水平像素(2560x1440)。 –