Tag: javascript

PHP:将多个复选框值插入一个MySQL列

我想写一个简单的PHP函数来插入10和20复选框的值。 现在,问题是:我应该在MySQL表的单个列中插入所有值,还是应该使用单独的表? 我的主要目标是将多个复选框的值插入MySQL,然后更新它们。 如果我检查了7个复选框,并且在一段时间后我想要从7更新到5,它将如何从表列中删除值? 请帮我一些简单的PHP示例和我应该添加什么类型的MySQL字段,因为我想插入复选框值应该在数字和其他字段中的复选框的标签。 这是我的HTML Games You Like: Football Basket Ball Pool Rugby Tennis Cricket Table Tennis Hockey

var $ this = this的原因是什么?

我不是最好的jquery,我遇到了一个var初始化,我不知道为什么编写代码的人这样做了。 在插件的init中,我们有 this.init = function(settings) { var $this = this; this.s = { initialSlide: 0, firstSlide: true, }; … more code, some uses $this, some uses “this” } 那么“$ this”和“this”之间有什么区别,为什么不一直使用一个或另一个呢?

jQuery Mobile在初始化页面后添加内容时出现问题

我正在使用jQuery Mobile和Backbone JS进行项目。 它主要是工作,使用jQuery Mobile的事件’pagebeforeshow’来触发正确的Backbone View。 在该特定jQuery Mobile页面的Backbone View中,它正在执行所需的所有动态操作。 视图中的一些function是使用Underscore的模板系统提取某些位。 这一切都很棒,直到我使用模板系统拉出表格。 例如,一组动态单选按钮(从Backbone Collection生成)。 这些单选按钮我希望使用jQuery Mobile提供的样式。 目前,jQuery Mobile没有采用这些动态注入的单选按钮。 我之前通过再次调用jQuery Mobile小部件“slider()”方法来执行滑块时解决了这个问题,它似乎刷新了它们……这似乎不是这些单选按钮的情况。 在Backbone View中,我尝试再次调用widget方法: $(this.el).find(“input[type=’radio’]”).checkboxradio(); $(this.el).find(“:jqmData(role=’controlgroup’)”).controlgroup(); 我也尝试过相反的方式,但似乎我需要这样做,以便分组样式工作等等。但这似乎不对! …当我点击单选按钮时,这样做也会导致错误,说:“在初始化之前无法调用checkboxradio上的方法;尝试调用方法’刷新’”? 似乎应该有一种方法在jQuery Mobile中重新初始化页面或什么?! 我注意到源代码中有一个“页面”小部件。 在页面制作完成后,jQuery Mobile如何处理注入DOM的表单/元素? 是否有一种干净的方式来处理它如何构成表格? 必须有一种干净的方式来调用表单来呈现’jQuery Mobile方式’而不依赖于基本HTML中的数据属性标记? 任何对这个问题的帮助或见解都将非常感激……我非常喜欢尝试让Backbone JS和jQuery Mobile很好地协同工作。 非常感谢,詹姆斯

绑定到动态创建的iframe内的事件

我需要绑定到用户执行特定操作后动态创建的iframe内的事件(比如click任意 )。 在iframe中附加iframe和代码的代码不是我的,我无法以任何方式更改它(这是一个CMS管理面板)。 如何使用jQuery 1.6来监听事件(再次,这不是我的选择,我坚持使用它)。 我认为delegate()可能是我想要的: $(‘body’).delegate(‘iframe input’, ‘click’, function(e) { alert(‘bingo?’); }); 但是,当点击输入时,上述内容不会发出警报。 但是,下面的内容符合预期: $(‘body’).delegate(‘input’, ‘click’, function(e) { alert(‘bingo?’); }); 但这不在iframe之内。 显然, iframe的src指向同一个域。 非常感谢任何帮助或只是正确方向的刺激。

jQuery – 按时间戳排序数组的最快方法

我如何按时间戳排序这个数组,最快的方法是什么(数组有很多条目)? 我的arrays myList = new Array(); myList[0] = {}; myList[0][‘title’] = ‘I am really new’; myList[0][‘timestamp’] = 1317039046; myList[0][‘date’] = ‘2011-09-26T12:10:46+00:00’; myList[1] = {}; myList[1][‘title’] = ‘I am the oldest’; myList[1][‘timestamp’] = 1315656646; myList[1][‘date’] = ‘2011-09-10T12:10:46+00:00’; myList[2] = {}; myList[2][‘title’] = ‘I am older’; myList[2][‘timestamp’] = 1316866246; myList[2][‘date’] = ‘2011-09-24T12:10:46+00:00’; myList[3] = {}; myList[3][‘title’] = […]

禁用文本框的复制或粘贴操作?

我有两个文本框,我想阻止用户从第一个(电子邮件)文本框中复制值并将其粘贴到第二个(confirmEmail)文本框中。 Email: Confirm Email: 我脑子里有两个解决方案: 阻止来自电子邮件文本框的复制操作,或 阻止来自confirmEmail文本框的粘贴操作。 有什么想法怎么做? http://jsfiddle.net/S22ew/

如何在IE 8中“启用”由AJAX调用插入的HTML5元素?

请参阅问题底部的解决方案。 IE 8(及更低版本)不适用于未知元素(即HTML5元素),无法设置样式或访问其大部分道具。 他们为此做了大量的工作,例如: http : //remysharp.com/2009/01/07/html5-enabling-script/ 问题是这对于页面加载时可用的静态HTML非常HTMLUnknownElement ,但是当之后创建HTML5元素时(例如包含它们的AJAX调用,或者只是用JS创建),它会将这些新添加的元素标记为HTMLUnknownElement as应该是HTMLGenericElement (在IE调试器中)。 有没有人知道如何解决这个问题,以便IE 8能够识别/启用新添加的元素? 这是一个测试页面: TIME TEST some time $(“time”).text(“WORKS GREAT”); $(“body”).append(“NEW ELEMENT”); //simulates AJAX callback insertion $(“time”).text(“UPDATE”); 在IE中,您将看到:UPDATE和NEW ELEMENT。 在任何其他现代浏览器中,您将看到UPDATE和UPDATE

异步加载js文件和其他依赖的js文件

我正在寻找一种干净的方式来异步加载以下类型的javascript文件:一个“核心”js文件(嗯,我只是叫它,哦,我不知道,“jquery!”哈哈),x个js依赖于正在加载的“核心”js文件的文件,以及y个其他不相关的js文件。 我有几个关于如何去做的想法,但不知道最好的方法是什么。 我想避免在文档正文中加载脚本。 因此,例如,我希望以下4个javascript文件异步加载,适当命名: /js/my-contact-page-js-functions.js // unrelated/independent script /js/jquery-1.3.2.min.js // the “core” script /js/jquery.color.min.js // dependent on jquery being loaded http://thirdparty.com/js/third-party-tracking-script.js // another unrelated/independent script 但这不起作用,因为它不能保证在颜色插件之前加载jQuery … (function() { var a=[ ‘/js/my-contact-page-functions.js’, ‘/js/jquery-1.4.2.min.js’, ‘/js/jquery.color.js’, ‘http://cdn.thirdparty.com/third-party-tracking-script.js’, ], d=document, h=d.getElementsByTagName(‘head’)[0], s, i, l=a.length; for(i=0;i<l;i++){ s=d.createElement('script'); s.type='text/javascript'; s.async=true; s.src=a[i]; h.appendChild(s); } })(); 几乎不可能异步加载jquery和颜色插件? (因为颜色插件需要首先加载jQuery。) 我正在考虑的第一种方法是将颜色插件脚本和jQuery源合并到一个文件中。 然后我的另一个想法是加载颜色插件,如下所示: $(window).ready(function() { […]

window.location.reload不适用于Firefox和Chrome

我想在点击按钮时更改用户状态,所以我所做的就是检测当前状态并根据需要进行更改。 但在这种情况下,更改后端的状态,但要显示页面需要刷新的状态,就像刷新时一样,它会检查当前状态并显示。 所以我使用“window.location.reload”属性来显示页面上的最新状态 所有的东西都在IE中运行良好。 但在Firefox和Chrome的情况下,状态不会改变。 我认为“window.location.reload”不起作用,因为当我只是评论此行并尝试单击按钮并手动刷新页面时,它会显示更改状态。 您能否建议我应该使用什么来在Firefox和Chrome中使用它? 当我用Google搜索时,如果你在“setTimeout()”中给出它,我发现它可以在Firefox和Chrome中运行。 我试过了,但即使这样它也不适合我。 $(document.body).on(‘click’, ‘#activate’, function () { var pkgVersion = $(this).attr(‘data-version’); alert(“@Url.Action(“SetActivePackage”, “Deployment”)”, { version: pkgVersion }); $.get(“@Url.Action(“SetActivePackage”, “Deployment”)”, { version: pkgVersion }).done(function () { }); setTimeout(function () { window.location.reload(data); }, 0); }); 请指教!

Greasemonkey,覆盖网站function

我已经阅读了很多,现在已经尝试将这项工作完成了大约5个小时……所以现在就是这样 我想编写一个覆盖函数dummy(){$ .ajax(…)}的脚本; 在网站上。 这是我试图这样做的方式 unsafeWindow.dummy = function(data){differantFunction(); $.ajax(…);}; function differantFunction(){ … } 但是在原始页面上被调用来做某事的虚拟函数……现在什么都不做。 //更新 我尝试运行该function,我试图通过adres栏覆盖,看看有什么问题:(javascript:dummy(“..”);) 我收到一个错误,告诉我$是未定义但我在网站和用户脚本上有jquery …我现在迷路了