我在一个content page实现一个点击弹出一个日历的功能(这个功能我已经在非content页测试可行)
但是content页没法写javascript,我就把script放到了master页 具体:<script language="javascript"> 
     function openModeBegin() 
     { 
     var returnValue=window.showModalDialog("CalendarForm2.aspx",Form1.TextBoxBeginDate.value); 
     Form1.TextBoxBeginDate.value=returnValue; 
     } 
</script> 
<script language="javascript"> 
     function openModeEnd() 
     { 
     var returnValue=window.showModalDialog("CalendarForm2.aspx",Form1.TextBoxEndDate.value); 
     Form1.TextBoxEndDate.value=returnValue; 
     } 
  </script> 点击一会不弹出日历,我觉得问题可能在Form1.TextBoxBeginDate这边,因为TextBoxBeginDate是content的一个textbox
而Form1是master的form id,不知道有什么解决方法,跪求大家帮忙

解决方案 »

  1.   

    在线等,用过content页面的应该有可能遇到这个问题吧
      

  2.   

    content页可以写javascript<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm4.aspx.cs" Inherits="WebApplication1.WebForm4" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">    <script language="javascript" type="text/javascript">
    // <!CDATA[        function Button1_onclick() {
                alert("dacong");
            }// ]]>
        </script>
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <div>
        <input id="Button1" type="button" value="button" onclick="return Button1_onclick()" />
    </div>
    </asp:Content>
      

  3.   

    document.getElementById("<%=TextBoxBeginDate.ClientID%>");
      

  4.   

    那Form1还是master页的,这样可以吗?
      

  5.   

    关键是找到TextBox2的ID,我不知道怎么找,只好写死了.
    查看"源代码找到"TextBox2的ID<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm4.aspx.cs" Inherits="WebApplication1.WebForm4" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">    <script language="javascript" type="text/javascript">
    // <!CDATA[        function Button1_onclick() {
                //alert(document.getElementById("<%=ContentPlaceHolder2.TextBox2.ClientID%>"););
                alert(document.getElementById("ctl00$ContentPlaceHolder2$TextBox2").value);
            }// ]]>
        </script>
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <div>
        <input id="Button1" type="button" value="button" onclick="return Button1_onclick()" />
    </div>
    </asp:Content><%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="WebApplication1.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>
        <asp:ContentPlaceHolder ID="head" runat="server">
        </asp:ContentPlaceHolder>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
            </asp:ContentPlaceHolder>
             <asp:ContentPlaceHolder ID="ContentPlaceHolder2" runat="server">
                <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            </asp:ContentPlaceHolder>
        </div>
        </form>
    </body>
    </html>
      

  6.   

    这个是什么意思,我javascript不大懂
      

  7.   

    现在的master页的Form1 与content页的textbox的问题,不知道怎么解决 
      

  8.   

    Form1.TextBoxBeginDate.value=returnValue;  这句有问题
    不知道如何给这个textbox赋值