据说用window.showdialog
写完后给我一段代码阿,谢谢

解决方案 »

  1.   

    用window.showModalDialog('url')可以打开一个模态窗口
    在打开的窗口中,可以用window.opener.TextBox1.value = 'aaa'的形式对原窗口控件赋值。
    基本思路就是,在b.aspx的Calendar_SelectedChange事件中,加入:
    Response.Write("<script language=JavaScript>window.opener.TextBox1.value='" + d.ToString() + "';window.close();</script>");不过我没有测试过。
      

  2.   

    或者这样做window.showModalDialog('url')可以打开一个模态窗口,在b.aspx的Calendar_SelectedChange事件中将值付给一个Hidden的控件(Runat=server),同时 window.close(),然后在页面的Close事件里将这个值返回,在原来的aspx中接受这个值,并可用javascript付给那个textBox。我是这样实现的,但没icyer的简单。
      

  3.   

    要解决的问题一 :如何打开一个窗口
       我在csdn里看了很多答复打开一个窗口,
       语法是window.showModalDialog('url')
       可否问一下具体的用法是怎么呢|?
      

  4.   

    你看这里,有源代码和讲解
    http://www.dotnetjunkies.com/howto/default.aspx?id=24
      

  5.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            
            If Not IsPostBack Then
                Calendar1.Visible = False
            End If    End Sub    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Calendar1.Visible = True
        End Sub    Private Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
            TextBox1.Text = Calendar1.VisibleDate.ToString
            Calendar1.Visible = False
        End Sub                                                    best regards!
      

  6.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            
            If Not IsPostBack Then
                Calendar1.Visible = False
            End If    End Sub    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Calendar1.Visible = True
        End Sub    Private Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
            TextBox1.Text = Calendar1.SelectedDate.ToString
            Calendar1.Visible = False
        End Sub                                                    best regards!
      

  7.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            
            If Not IsPostBack Then
                Calendar1.Visible = False
            End If    End Sub    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Calendar1.Visible = True
        End Sub    Private Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
            TextBox1.Text = Calendar1.SelectedDate.ToString
            Calendar1.Visible = False
        End Sub                                                    best regards!
      

  8.   

    用C#怎么改。
    我希望做为程序员要先测试以下是否通过才能真实的告诉别人
    做到 实事求实的态度,没有测试的,就得说出来
    Calendar1.Attributes.Item("SelectedField")
    在C#里根本就没有这样的写法。
    Public Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
      '************************************************************************
      'Purpose: Write the selected date to the appropriate text field.
      '************************************************************************
      Dim txtDate As TextBox  'get the textbox that the date should be written to
      txtDate = Page.FindControl(Calendar1.Attributes.Item("SelectedField"))  'Write value to appropriate textbox
      txtDate.Text = Calendar1.SelectedDate  'Hide the calendar
      hideCalendar()End Sub
    请是否有人能把它改写一遍,可能不少人都在想解决这个问题。我正在改写之中
      

  9.   

    private void Calendar1_SelectionChanged(object sender, System.EventArgs e)
    {
    TextBox txtDate; 
    txtDate = (TextBox)Page.FindControl(Calendar1.Attributes["SelectedField"]);
             txtDate.Text = Calendar1.SelectedDate.ToString("yyyyMMdd");
    hideCalendar();
    }
    我帮你改了,很简单的。对这个例子,我想如果能改成年份也可以选择的话就很好的,可惜我水平有限,没能成功。那位高手试试吧。
      

  10.   

    private void Calendar1_SelectionChanged(object sender, System.EventArgs e)
    {
    TextBox txtDate; 
    txtDate = (TextBox)Page.FindControl(Calendar1.Attributes["SelectedField"]);
    txtDate.Text = Calendar1.SelectedDate.ToString("yyyyMMdd");
    hideCalendar();
    }
    我帮你改了。但是这个控件不好用,就是选择年份时必须一个月一个月地加减。很烦。
      

  11.   

    能不能把完整的代码给出来。,感激,  好象大家讨论这个问题都偏题啦。我本来想做一个由b.aspx提供a.aspx的页面,不一定是canlendar,不过这样也好。我学到另一种方法。关注中
      

  12.   

    System.Web.UI.ImageClickEventArgs) Handles btnStartDate.Click
        '************************************************************************
        'Purpose: Check for a valid date in the appropriate text field and call
        'procedure to display calendar.
        '************************************************************************
        Dim dSelDate As Date    If IsDate(txtStartDate.Text) Then
          dSelDate = txtStartDate.Text
        End If
        myCalendar.displayCalendar("Select a start date", dSelDate, _
          "txtStartDate", 59, 220)  End Sub
    能否给我改写这里呀!
    vb里有IsDate()可以判断是否为日期,但是C#怎么判断呀!!!
    IsDate(txtStartDate.Text)