【问题标题】:jquery dialog, prevent postback from calendar?jquery对话框,防止从日历回发?
【发布时间】:2014-07-02 11:36:57
【问题描述】:
 $(document).ready(function () {

        $("#TaskCreatorDivButton").click(function () {
            $("#taskCreationForm").dialog(
                {
                    width: "600px"
                }                   
            );
        });
    });

在 jQuery 对话框中创建“创建新任务”表单。

我在这个 jQuery 对话框中有两个自定义 asp:Calendars。当我从“startDateCalendar”中选择一个日期时,对话框窗口会关闭(可能是由回发引起的)。

我希望能够选择开始日期和结束日期,填写表格的其余部分,然后在我按下名为“创建任务”的按钮时关闭对话框,而不是之前。那么如何预防呢?

我是这方面的初学者,我很难自己解决这个问题,所以请帮帮我。

【问题讨论】:

  • 正在调用任何服务器端事件吗?
  • 我不确定,也许 AutoPostBackOnSelectionChanged 会触发?在那种情况下,我该如何让它成为假?我已经尝试过。 AutoPostBackOnSelectionChanged = false。
  • 你设置了 OnSelectionChanged 事件吗?
  • 是的,我有一个 startDateOfTask_SelectionChanged() 和 endDateOfTask_SelectionChanged()
  • 在这些方法中放置断点,看看当你选择日期时它们是否被调用

标签: javascript jquery asp.net jquery-ui


【解决方案1】:

你试过return false吗?

像这样:

$(document).ready(function () {
    $("#TaskCreatorDivButton").click(function () {
        $("#taskCreationForm").dialog(
            {
                width: "600px"
            }                   
        );
        return false; // <-- this may help
    });
});

【讨论】:

    【解决方案2】:

    删除所有服务器端控件事件,在“创建任务”按钮上单击使用 jQuery 设置 regStart.Text。

    尝试使用jQuery datepicker 代替 ASP.NET 日历控件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-06
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 1970-01-01
      • 2021-09-26
      • 2019-04-15
      • 1970-01-01
      相关资源
      最近更新 更多