ASP.NET与JQuery冲突

时间:2013-03-05 10:00:06

标签: jquery webforms

我正在使用JQuery和JQuery UI进行开发,实际上我使用的是datepicker小部件。我需要更改语言,然后为它下载语言库(它是意大利语):

jQuery(function($){
  $.datepicker.regional['it'] = {
    /* ... */
  };
  $.datepicker.setDefaults($.datepicker.regional['it']);
});

在我的代码中,我以这种方式使用它:

$(function () {
  $("#TextBoxStartDate").datepicker();
  $("#TextBoxEndDate").datepicker();
});

这样我就出现了这样的错误:

Object [object Object] has no method 'datepicker'

我尝试使用相同形式的库来加载datepickers:

jQuery(function($){
  $("#TextBoxStartDate").datepicker();
  $("#TextBoxEndDate").datepicker();
});

它有效!但我不明白为什么。任何人都可以向我解释一下吗?

更新:我的问题是两个jQuery实例之间的冲突。它被加载了两次,因为我在ASP.NET应用程序中将其作为脚本管理器插入(我需要它继续使用ASP.NET Web窗体的客户端控制)。 ASP.NET在视图状态下将其加载到正文中,然后将其加载到头部,因此它们会自行折叠。我将jquery-ui和其他使用jquery的脚本移动到正文中,它解决了问题。 只有一件事情无法解释:如果我使用jQuery(function($) {,为什么会有效?!?!

0 个答案:

没有答案