问题标签 [jquery-3]
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.
javascript - jQuery 3.0 deferred 在调用 resolve 时不执行 then 回调
我正在尝试使我的库在 jQuery 3.0 中工作,但由于 Deferred 对象中的重大更改而无法工作,我有这样的代码:
我有两种方法暂停和恢复
需要延迟,因为我在创建 command_line 对象之前执行暂停。
我在第一次暂停后调用解决:
以及这样的日志顺序:
顺序应如下所示:
为什么在调用解析后很长时间才调用暂停然后回调?它在 jQuery 2 中工作。
javascript - 图像数组循环 JS CSS
我试图将图像放置在 div 中,以便可以控制 h/w,我似乎可以让它与 jquery 3.2.1 一起使用它只适用于 jquery 2.1.1,有没有更好的写法这段代码,我试图简单地单击“下一步”div并使用循环更改图像。
javascript - 当从 Ajax 调用内容时,JQuery .on 不起作用
我有一个问题,我看到很多人都解决了,但似乎没有一个解决方案对我有用。也许这是我的方法。
我有一个编辑页面(用于一个Album
),在其中,它有一个foreach
插入一个Partial View
. 编辑页面旨在显示Genre
s的动态列表Album
,它当前可以添加新的下拉(部分视图),选择并保存(在控制器中)。
我可能想补充一点,这是使用 JQuery 3.x 的带有实体框架的 MVC
Edit.cshtml
查看(注意@foreach (var albumGenre in Model.AlbumGenres)
和后来的 Ajax 链接@Ajax.ActionLink(
):
从那里我可以_EditGenre.cshtml
看到:
下面是我的AddGenre.js
脚本:
首先是.dialog
部分:
然后是.on('click'...
部分(这是在将 Ajax 内容添加到页面时不被调用的部分):
简而言之,我可以打开此编辑页面,单击+
添加新类型(在模态窗口中),通过 JavaScript 更新所有下拉菜单(并让适当的下拉菜单选择新选项),对此感到满意。但是,我无法单击Add Genre to Album
(Ajax 调用),然后单击+
新的流派下拉菜单旁边的,它导航到_CreateGenre
我希望它打开模态窗口的时间(JavaScript/jQuery 没有触发)。
$('#GenreRow').on('click', '.genreLink', function () {
没有被解雇,我不知道如何让它做到这一点。另一个示例,console.log('JavaScript test');
通过 Ajax 从部分视图加载内容时不会触发添加。
javascript - 在动态创建的选择上添加点击事件
我做了这个示例代码:https ://jsfiddle.net/gwpcfp89/
问题是关于这个点击事件:
我使用#input1
, #mytext1
,并且我希望点击是动态的。例如:如果我在表中创建四个选择,则第四个选择应该像第一个选择(#input4
和#mytext4
)一样具有单击事件。
可能吗?
javascript - 为什么加载事件有时会在 jQuery 3.x 中的就绪事件之前触发?
我试图了解在 SO 上阅读有关它的其他主题,但我找不到明确的答案。
我还检查了https://api.jquery.com/ready/和https://api.jquery.com/load-event/
当然,它并不总是发生。
加载前准备好(无内容)
准备好后加载(带图像)-但仅在您第一次访问该笔时,当您刷新它时(或者您有良好的互联网连接并且您在 1ms 内下载 1MB ;))-加载事件将在准备好之前触发,因为您已经有了该图像在浏览器缓存中。
我知道如何部分“解决”这个问题,但我更感兴趣的是它为什么会发生。
但是这个“修复”并不是万无一失的——见代码注释
javascript - 抛出错误的顺序?
我有一个函数,在发生错误时(例如“超时”)应该抛出一个错误,我在承诺链的末尾捕获它。
具体来说,我遇到了超时问题。代码到达投掷。我扔的球实际上没有被抓住,但有些东西被扔了。Catch 捕获包含此 Object 的错误{"readyState":0,"status":0,"statusText":"timeout"}
。
我不明白。扔什么?
javascript - 在记录编辑期间检查下拉列表中的现有选择
我在网格中有一些可由用户编辑的行。当用户单击网格行中的编辑按钮时,我将显示一个多选下拉列表(“ddlEditRegionList”),其中包含可供选择的选项。当显示此下拉列表时,我想保持已保存的选择处于选中状态。
我正在尝试使用下面的代码片段,但这确实得到了我现有的选择。
请注意,我使用的是 jquery-3.2.1
javascript - 如何停止模式中所有控件的传播
由于我发现 angularjs 和 bootstrap 中的模态缓存很烦人,因此我发现这篇文章“ $modal caching ”将一种版本添加到模态的 url 中,这样可以避免缓存内容中的新变化模态的,但是由于我这样做时,当我单击按钮打开模态或模态内的任何控件时,我总是
Uncaught TypeError: Cannot read property 'toLowerCase' of undefined at ih.js:223
从第 223 行的 jquery-3.1.0 库中收到此脚本错误。
按钮打开编辑部(我的)
产生错误的 jQuery 库中的 jQuery 方法
我调试了代码,从我单击按钮打开模态的那一刻起,在我的模态内部的保存按钮或任何其他控件(如简单的复选框或单选按钮)上它从 Jquery 转到此代码while (target && target.tagName.toLowerCase() !== 'a')
,我认为(如果我错了,请纠正我)正在冒泡。它开始评估包含该控件的所有 HTML 元素,直到到达没有属性 tagName 的元素 #document 并生成错误。
我开始在所有控件上放置onclick="event.stopPropagation();"
效果很好的控件,但我开始污染模态控件中的所有控件。
有没有办法阻止所有内部控件从模态或代码中的传播以打开模态,或者我可以停止从 CSS 冒泡吗?
编辑
该错误是由于我最近安装的一些 chrome 扩展造成的。我卸载它们并重新启动浏览器,问题就消失了。
javascript - .on() 之后的 jQuery 3.x .off()
我只是在 .on() 方法之后将 .off() 方法用于 .click() 方法。
我真的很困惑为什么 click() 事件会触发!