Tag: javascript

如何从jQuery的$ .ajax()函数调用servlet

我试图从jQuery的.ajax()函数调用一个servlet。 目前我不认为我甚至会调用servlet或将paramaters传递给它,但是很多Google搜索似乎没有帮助。 有任何想法吗? 这是我的HTML: function login(){ $(“#loading”).hide(); var email = document.nameForm.email.value; $.ajax({ type: “GET”, url: “ProcessForm”, data: “email=”+email, success: function(result){ alert(result); } }); } My AJAX This time it’s gonna work 电邮加载 还有我的web.xml ajaxtry index.html index.htm index.jsp default.html default.htm default.jsp ProcessForm com.ajaxtry.web.ProcesFormServlet ProcessForm /ProcessForm servlet目前只是一个模板: package com.ajaxtry.web; // imports here public class ProcessFormServlet { public […]

未捕获的TypeError:对象#没有方法’attr’

我试图用类工具提示抓住我的div。 然后做这样的事情: var schemes = $(“.tooltip”); for (var i in schemes) { var scheme = schemes[i]; console.log(scheme.attr(“cost”)); } 但它抛出了上述错误。 我错过了什么? (显然我是javascript + jquery的新手)

使用jQuery以编程方式在Javascript for IE中触发事件

当IE中的用户触发事件时,它将设置为window.event对象。 查看触发事件的唯一方法是访问window.event对象(据我所知) 如果以编程方式触发事件(例如通过jQuery触发事件时),则会导致ASP.NETvalidation程序出现问题。 在这种情况下, window.event对象存储最后一个用户触发的事件。 当onchange事件以编程方式触发连接有ASP.NETvalidation器的文本框时,validation会中断,因为它正在查看触发最后一个事件的元素,而该事件不是validation器的元素。 有没有人知道这方面的方法? 这似乎是一个可以解决的问题,但从在线看,大多数人只是想方设法忽略问题而不是解决问题。 解释我正在做的具体事情: 我在文本框上使用了一个jQuery时间选择器插件,该插件还有2个与之关联的ASP.NETvalidation器。 当时间改变时,我正在使用更新面板回发到服务器以动态地执行某些操作,因此我需要触发onchange事件以触发该文本框的回发。 jQuery时间选择器通过创建隐藏的无序列表来操作,该列表在单击文本框时可见。 单击其中一个列表项时,将通过jQuery的change()方法以编程方式为文本框触发“更改”事件。 因为事件的触发器是列表项,所以IE将列表项视为事件的来源,而不是文本框,就像它应该的那样。 一旦文本框改变,我就不太关心这个ASP.NETvalidation器工作了,我只需要处理“ change ”事件,这样就可以为文本框调用我的回发事件。 问题是validation器在IE中抛出exception,阻止任何事件被触发。 Firefox(我假设其他浏览器)没有这个问题。 由于事件模型不同,只有IE。 有没有人遇到过这个并看过如何修复它? 我发现这个问题报告了其他几个地方,但它们没有提供解决方案: jQuery的论坛,带有jQuery UI Datepicker和ASP.NET Validator ASP.NET论坛,ValidatorOnChange()函数的bug

javascript事件队列有优先权吗?

这些天,我已经阅读了一些关于setTimeout,setInterval的文档。 我了解到javascript是一个单独的线程,每次只执行一段代码。 同时,如果有事件发生,它将被推入事件队列并阻塞直到适当的时间。我想知道,当许多事件被阻塞等待同时执行时。这些事件是否有所不同优先级,所以高优先级事件将在低优先级之前执行。或者只是一个FIFO队列。 setTimeout(fn1, 10); $(document).click(fn2); //will be called at 6ms; $.ajax({ajaxSuccess(fn3); //async request,it uses 7ms;}) for () { //will run 18ms; }; 在上面的代码中,setTimeout fn1将在10毫秒发生,点击事件处理程序fn2将在6毫秒,ajax回调fn3将在7毫秒。 但是所有这三个函数都将被阻塞,直到for循环结束。在18ms,for循环结束,所以这些函数的调用顺序是什么。(fn1,fn2,fn3)或(fn2,fn3,fn1)

您将如何将站点从Prototype切换到jQuery

我在Prototype中编写了一个站点,但想切换到jQuery。 有关如何最佳切换的任何想法?

检查是否加载了jQuery UI

可能重复: 测试jQueryUI是否已加载 如何检查页面上是否加载了jQuery的jQuery UI扩展库?

jQuery加载文本文件数据

我正在尝试使用外部脚本文件中的$ .get()函数从我的服务器上的文本文件加载数据。 我的代码如下: /* * Load sample date */ var stringData; $.get(“http://localhost/webpath/graphing/sample_data.txt”, function(data){ stringData = data; //alert(“Data Loaded: ” + stringData); }); //Split values of string data var stringArray = stringData.split(“,”); alert(“Data Loaded: ” + stringData); 当我在$ .get()函数内部时,我可以看到stringData var得到了很好的人选,并且对alert的调用确认它包含来自示例文本文件的数据。 但是,当我离开$ .get()函数时,stringData var不再显示。 我不太了解该函数如何工作以了解它为什么没有像我预期的那样做。 我想要它做的就是将文本数据加载到变量中,以便我可以使用它。 任何帮助表示赞赏。

我可以通过AJAX从外部页面加载数据吗?

我刚开始学习jQuery和AJAX。 我可以通过jQuery.load()将本地页面(在我的磁盘上)加载到div中,但外部站点似乎不起作用。 我甚至使用wireshark检查数据是否从服务器发送(它是)。 示例代码如下: $(document).ready(function() { // $(‘#test’).load(‘localpage.htm’); works! $(‘#test’).load(‘http://www.google.com/’); // does not work! }); 首先可以做到这一点吗? 如果是这样,怎么样?

jQuery处理按键组合

我知道当keypress事件发生时我们可以访问对象的事件属性keycode按下哪个keycode ,但我需要知道如何通过jQuery如ctrl + D ..etc来处理keypress组合? 在下面的代码中,我尝试做类似的事情: $(document).on(“keypress”, function(e) { if( /* what condition i can give here */ ) alert(“you pressed cntrl + Del”); });

当jQuery与元素不匹配时抛出错误

通常,当我用jQuery选择一个元素时,如果它找不到匹配的元素,我希望它给我一个错误。 例如,我刚刚遇到一个错误,因为我更改了ul元素的类: $(‘ul.some-list’).append(listItem) 有没有一种方便的方法来确保我的jQuery调用与元素匹配?