我在webform上有一个图表,我需要根据浏览器大小调整大小。我已经尝试了Stack Overflow的一些演示代码,它显示了Document.Ready的使用......使用了2个隐藏宽度和高度的隐藏变量。如果我将该代码放在没有MasterPageFile的webform中,那么它的效果很好。如果我创建一个使用主文件的webform,它将不会将宽度和高度放在隐藏变量中。我已经完成了文档就绪功能,我可以看到Windows的宽度/高度,看起来它正在分配它们。但是我的监视窗口中的变量显示为“未定义”。这告诉我此时它并不知道这些变量。 Site,Master文件是默认的VS2013生成代码。
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="WithMaster.aspx.cs" Inherits="RepairChart.WithMaster" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<script src="Scripts/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var widthvar = $(window).width();
$("#mwwidth").val($(window).width());
$("#mhheight").val($(window).height());
$("#mWWidthLabel").text($(window).width());
$("#mHHeigthLabel").text($(window).height());
});
</script>
<div>
<asp:HiddenField ID="mwwidth" runat="server" />
<asp:HiddenField ID="mhheight" runat="server" />
<asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button1_Click" />
<asp:Label ID="mHHeigthLabel" runat="server" Text="Label"</asp:Label>
<asp:Label ID="mWWidthLabel" runat="server" Text="Label"></asp:Label>
<asp:Chart ID="mChart1" runat="server" DataSourceID="SqlDataSource1">
<Series>
<asp:Series Name="Series1" XValueMember="RepairDate"YValueMembers="serialNo">
</asp:Series>
</Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1">
</asp:ChartArea>
</ChartAreas>
</asp:Chart>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:IPCConnectionString %>" SelectCommand="CountSNByDateRange" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:Parameter DefaultValue="2/1/2016" Name="startDT" Type="DateTime" />
<asp:Parameter DefaultValue="2/29.2016" Name="stopDT" Type="DateTime" />
</SelectParameters>
</asp:SqlDataSource>
</div>
</asp:Content>