0

マスター ページに基づく asp.net 4 Web アプリケーションがあります。マスター ページ内で、必要なスクリプトと css ファイルを参照しました。ただし、ページが読み込まれると、「Microsoft JScript ランタイム エラー: オブジェクトが必要です」という JavaScript エラーが発生します。マスター ページを使用せずにテスト アプリケーションをビルドすると、コードが正常に動作するため、これがマスター ページに関係していることはわかっています。

マスター ページ コード

   <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="WebApplication2.Site1" %>
    <!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">
    <script src="Popup.js" type="text/javascript"></script>
    <link rel="stylesheet" href="StyleSheet1.css" type="text/css" media="screen" />
    <script type="text/javascript" src="jquery-1.7.1.min.js"></script>
    <title>Test</title>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
    </head>
    <body>
        <form id="form1" runat="server">
    <div>
        <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
        </asp:ContentPlaceHolder>
    </div>
    </form>
    </body>
    </html>

ポップアップコード

function Popup() {
        window.showModalDialog("webForm3.aspx", "");
    }

$(document).ready(function () {
    $("#button").click(function () {
        var isChecked = $('#checkbox1').is(':checked');
        if (isChecked) {
            Popup();
        }
    });
});

メインページのコード

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true"
CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication2.WebForm1" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
Check box
    <div id="button">
        <asp:CheckBox ID="checkbox1" runat="server" /></div>
</asp:Content>

ポップアップページのコード

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm3.aspx.cs"     Inherits="WebApplication2.WebForm3" %>

<!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>Popup</title>
</head>
<body>
<form id="form1" runat="server">
<div>
Hellow World
</div>
</form>
</body>
</html>
4

1 に答える 1

0
//================  site1.master  =======================//

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="site1.master.cs" Inherits="NewJqueryPlugins.site1" %>

<!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></title>
    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="Popup.js" type="text/javascript"></script>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
        </asp:ContentPlaceHolder>
    </div>
    </form>
</body>
</html>

//================  popup.js  =======================//


$(document).ready(function () {
    $('#button').click(function (e) {
        //var isChecked = $(this).find('#ContentPlaceHolder1_checkbox1').is(':checked');

        //Or

        var isChecked = $(this).find(':checkbox').is(':checked');

        if (isChecked) {
            Popup();
        }
    });
});

function Popup() {
    window.showModalDialog("webForm3.aspx", "");
};


//================  webfrom2.aspx  =======================//


<%@ Page Title="" Language="C#" MasterPageFile="~/site1.Master" AutoEventWireup="true"
    CodeBehind="WebForm2.aspx.cs" Inherits="NewJqueryPlugins.WebForm2" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <div id="button" style="border: 2px solid green;">
        Check box
        <asp:CheckBox ID="checkbox1" runat="server" />
    </div>
</asp:Content>


//================  webfrom3.aspx  =======================//


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm3.aspx.cs" Inherits="NewJqueryPlugins.WebForm3" %>

<!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 id="Head1" runat="server">
    <title>Popup</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        Hellow World
    </div>
    </form>
</body>
</html>
于 2012-04-26T08:28:57.433 に答える