问题标签 [jquery-2.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - Datatable draw() 方法不适用于列过滤器
在花了几天时间尝试了我在互联网上找到的许多解决方案后,我在这里问。
我有一个表格,当点击搜索按钮时,它会显示一个包含数据的表格。该表有 8 列,在其中的 3 列上,我想添加一个文本输入,用于应用具有列数据的过滤器。为了更好地了解我的需要,JsFiddle 显示了一个工作列过滤器。
所以,我尝试了上面链接和Datatable 示例的解决方案,但没有成功,找不到我做错了什么。
有我的代码:
使用result
的aaData
是一个json,我在搜索Rest方法的ajax成功。我在该成功方法上填充表格。
所以我的问题是:我做错了什么或误解了什么?我试图将对象equipmentTable.column($(this).data('index')).search(this.value)
与示例中返回的对象进行比较并获得等效对象。这就是为什么我几乎可以肯定问题来自 draw() 方法。
谢谢您的帮助。
javascript - 如何将错误从 $.ajax 实例冒泡到 $.ajaxSetup?
我在 ajax 设置中定义了一个错误回调,它将在每个 ajax 实例中执行:
我还有一个简单的 ajax 请求,它有自己的错误处理定义。此定义覆盖 中的定义$.ajaxSetup
:
如何将错误从$.ajax
实例冒泡到$.ajaxSetup
?
javascript - 委托功能在 jquery 2.1.1 中不起作用
我有这段代码用于加载内容以comment-list
div
使用 jQuery 进行分页delegate
:
JS:
HTML:
但在行动中,我的代码无法正常工作,也无法将内容加载到div
. 点击分页链接后,我看到打开新窗口并加载我的内容。jQuery 2.1.1
我在Version中测试我的代码,我认为delegate
在jQuery 2.1.1
.
如何解决我的问题?
javascript - 使用 jquery 通过 id 或 class 选择嵌套元素
我有点困惑 jquery 如何通过 DOM 进行搜索。它是从根节点中选择,类似于 XPath / 选择器,还是从当前无论它们在哪里,类似于 XPath // 选择器?
我有以下设置:
现在,如果我尝试先选择内容部分,然后按类或 id 过滤,我可以将事件处理程序附加到选择元素,但如果我尝试直接查询元素,则永远不会附加事件处理程序。
例如,这有效:
但这些不会:
有人可以解释为什么吗?有没有办法从根中选择 DOM 中的任何元素?
使用 jQuery 2.1.1
jquery-ui-dialog - 在 jqueryui 弹出窗口打开和关闭后更改事件停止触发
这是简短的 TL;DR 版本:
我有一个针对停止触发的选择列表的 onchange 事件
对元素 id 使用 JQuery 是否有任何问题,即$("#Customer_ID").change
,如果该元素位于从部分视图填充的 jqueryui 弹出窗口内。除此之外,我还有两个不同的弹出窗口,它们由共享相同$("#Customer_ID").change
javascript的不同部分视图填充
我有一个页面有两个 div 用于 jquery ui 弹出窗口
当我在 jqgrid 中单击一个单元格时,我会弹出相应的对话框(编辑或新建)
弹出窗口依次由控制器的部分视图填充
这工作正常
在这些弹出窗口中,我有三个级别的级联下拉菜单。大多数情况下,它们工作正常。几次打开和关闭弹出窗口后,动态下拉菜单停止工作
此时动态下拉 jscript 正在加载,但似乎没有触发更改事件。
我怀疑这是因为我有两个具有相同名称控件的弹出窗口?
无论如何这里是一些删节的代码片段
_Layout.cshtml
有对附加所有 JQueryui 东西的 js 的引用
布局.js
包含设置编辑弹出窗口和其他一些东西的代码。这只是创建弹出窗口的一部分:
TasksWeeklyClient.cshtml
这实际上有一个 jqGrid 。单击一个单元格会弹出,例如创建弹出窗口。
创建.cshtml
这是由返回部分视图的控制器提供的。这就是问题开始的地方。Customer_ID 下拉列表级联到 CustomerProject_ID 下拉列表。几次关闭和打开后,它停止工作。TasksDialogs.js
这也有所有级联下拉内容的引用(级联下拉是另一个问题的主题:级联下拉重复填充
(此代码位于任务视图文件夹中)
任务对话框.js
最后我们有了这个脚本。通常这可以工作,但在打开和关闭几个弹出窗口后,CustomerID.change不再出现在控制台中。
你可以看到我尝试了两种不同的方法来附加更改事件。两者都表现出相同的症状。
我不知道我需要发布控制器代码。那部分一切正常。
jquery - jQuery:自定义事件不运行
我目前遇到了一个 jQuery 问题,到目前为止花了我几个小时,但我仍然无法弄清楚到底出了什么问题。长话短说 - 我的代码是用 Play Framework 编写的记忆游戏的一部分。
jQuery 文件(简化):
说明:内存“卡片”在使用其他(工作)jQuery 代码初始加载后加载到页面上。一个 .card div 分别加载到一个 .card-grid div 中。我需要运行 jQuery-flip 插件的翻转方法才能工作。jQuery 版本是 2.1.4(flip 不会在更新的版本上运行)。
例如,如果我myEvent
在第一种方法中替换为click
,我只需单击其中一张卡片,该功能就可以正常运行。
如果我创建另一个函数,让我们说
并更改按钮的目标,文本在 .test 对象内显示得很好。
如果有人能告诉我出了什么问题,我将不胜感激。
jquery - 与 jquery 1 和 2 不同,jquery 3 ajax 处理程序仅在完成处理程序代码后才执行新添加的 html+js
我制作了一个 jsbin 来显示问题: http ://jsbin.com/dexeqiz/edit?html,js,output
有这个html:
和js:
在 jquery 1 和 2 中
它将在#log 中呈现:
3
1
2
但在 jquery 3 中它将呈现
1
2
3
(所以只有在整个 ajax 处理程序完成后才添加 3)
这是一个问题,因为有时我的代码期望在调用下一行之前执行之前附加在行中的代码
现在我唯一的解决方法是将代码.append(newhtml)
放在 a之后setTimeout
,但我不希望这样做,因为它对用户来说看起来有点慢。我宁愿有类似的东西$.when(append).done(function(){code})
更新:
似乎发生这种情况是因为从 jQuery 3 脚本开始,用于文档就绪$(function(){});
加载异步(https://github.com/jquery/jquery/issues/1895),这是我目前的解决方案:http: //jsbin.com/ xayitec/edit?html,js,输出
javascript - 可以在php文件中获取ajax发送的变量
我在 PHP 文件中定义了我的表单(使用jquery-2.1.4.min.js
):
单击按钮时会调用以下函数。
在processPost.php
文件中,我定义了以下两个var_dumps
:
1) var_dump(isset($_POST['title']));
2) var_dump ($_POST['title']);
alert(msg)
我可以看到在窗口中打印的值 。在开发人员工具窗口选项Response
卡的选项卡中也是如此。Network
但我想在processPost.php
文件中提供这些变量,以便我可以使用它向 web 服务调用发出 curl 请求。是否可以在processPost.php
文件中获取这些变量?
javascript - 将删除的元素添加回 DOM jQuery 2
我有以下代码,我想在 jQuery 中删除元素并将其添加回 DOM:
出于某种原因,当amount_field的值不等于 0 时,我的元素.pm-container不会重新添加到我的页面中。
知道为什么吗?
谢谢你的帮助。
javascript - 格式化字段(详尽 & ES3)
我正在尝试在用户键入时实现详尽的字段格式(此处为比利时电话号码)。
这是代码:
我的客户要求我解决的问题是最终用户想要修改数字的一个或几个部分:01 234 55 67 89 => 01 222 55 67 89。
显然,用户可以通过鼠标单击或箭头键放置光标,但这会导致一些问题,因为验证是根据字段的长度完成的,这将比光标所在的位置长。
我如何改进此功能以考虑客户的要求并在全球范围内考虑?
先感谢您,
PS:这必须在 ES3 或 JQuery 2.1.3(最大)中完成,并且出于某种原因在 IE11 上工作......
Edit1:出于同样的原因,我不能使用 HTML5 输入模式。Edit2:我尝试实现正则表达式验证,因为它看起来很有希望,但我不知道如何有效地测试具有固定模式的变化字符串(当我键入时)。如果有帮助,当用户提交字段时,我的后端会执行以下测试:
var 模式 = /(+\d{2}){1}(46[0-1]|463|46[5-8]|47[0-9]|480|48[3-9]|49[ 0-9]){0,}(\d{2}){0,}(\d{2}){0,}(\d{2}){0,}/