首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery可拖动方法在分部视图中不可用

JQuery可拖动方法在分部视图中不可用
EN

Stack Overflow用户
提问于 2010-11-22 03:47:08
回答 4查看 9.3K关注 0票数 1

我有一个局部视图,它有许多Div,每个Div都被设置为使用JQuery UI可拖动库进行拖动。

Jquery脚本被加载到母版页中,当您打开它自己的部分视图时,它工作正常。但是,我使用ajax在主页中加载此部分视图,这是通过在下拉列表中选择一个选项触发的。当我这样做的时候,jquery代码不再工作,并且我得到了这个错误:

代码语言:javascript
复制
Uncaught TypeError: Object #<an Object> has no method 'draggable'

部分视图似乎没有访问jquery库的权限,但我不知道为什么。

我使用的set The Div's up as draggable的代码如下:

代码语言:javascript
复制
 $(function () {
        $(".NameBox").draggable({
            revert: true,

            start: function (event, ui) {

                document.onselectstart = function () { return false; };

            },
            stop: function (event, ui) {
                document.onselectstart = function () { return true; }
            }

        });
        $(".NameBox").live(droppable({
            accept: '.NameBox',
            drop: function (event, ui) {
              alert(ui.draggable.attr("dropped"))


        });
});

使用Jquery load语句加载分部视图:

代码语言:javascript
复制
$('#relationships').load('<%= Url.Action("ListRelationshipMappings", "Admin") %>/' + $("#availibleInstances").val())

availibleInstances只是一个允许选择ID字段的下拉列表。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-11-22 04:44:01

事实证明,这是因为我还使用了Telerik MVC脚本注册选项来加载它的脚本,后者加载了它自己的Jquery版本,这导致了冲突。

这可以通过使用以下命令加载Telerik脚本而不使用Jquery来解决:

代码语言:javascript
复制
<% Html.Telerik().ScriptRegistrar().jQuery(false); %>
票数 3
EN

Stack Overflow用户

发布于 2010-11-22 03:49:36

这个错误通常是因为你没有正确引用UI javascript库。

票数 2
EN

Stack Overflow用户

发布于 2013-06-12 04:13:38

代码语言:javascript
复制
<!--<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>-->
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

例如,如果您的UI列在库之前...如上图所示,您将得到此错误。如果你是这样做的,如下所示:

代码语言:javascript
复制
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<!--<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>-->

你不会的。

快乐编码‘;D

为了不让新人感到困惑,没有必要在这两者之间做任何事情……只是使用注释掉的部分进行演示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4239954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档