JS对象的Stringify添加了额外的数据

在SO上获得一些很好的帮助之后,我使用以下代码片段构建了一个JS对象: var noticeMap = $(‘#preExamNoticesTable tbody tr’).map(function() { var $cells = $(this).children(); return { sequence: $cells.eq(0).children(‘input’).val(), noticeUID: $cells.eq(1).text() }; }); 一个示例结果是noticeMap看起来像这样(来自firebug): jQuery(Object { sequence=”1″, noticeUID=”JP-L23013663997630352308″}, Object { sequence=”3″, noticeUID=”JP-L22913664089460612172″}, Object { sequence=”4″, noticeUID=”JP-L22913664090188631530″}, Object { sequence=”2″, noticeUID=”JP-L22913664089408651799″}) 当我尝试使用JSON.stringify(noticeMap)它的工作原理很好,除了它将额外的数据添加到我不希望通过POST传递的字符串。 它为每个值(来自noticeMap的对象)生成数字键,但在最后一个所需的k:v对之后,我的字符串也有上下文obj , length和prevObject obj。 这是我在stringify()和POST后的JSON: { “0”: { “sequence”: “1”, “noticeUID”: “JP-L23013663997630352308” }, “1”: { “sequence”: “3”, […]

在这种情况下如何使用jquery-modal对话框?

我已经在使用了依赖于jquery.js文件的tablesorter.js 。 现在,我正在尝试使用modal dialog,该对话框最终依赖于jquery-1.9.1.js 。 由于2个jqueries不能在同一个模板上,我怎样才能让tablesorter.js和jquery对话框一起工作? 如果我删除jquery.js并且只包含jquery-1.9.1.js,我得到: Uncaught TypeError: Object [object Object] has no method ‘tablesorter’ 错误。 如果我删除jquery-1.9.1.js并仅包含jquery.js,那么我会收到以下错误: Uncaught TypeError: Object # has no method ‘dialog’ 我正在使用这样的Javascript和CSS:

Hammer.js在’switch’内跳过’case’

将Hammer更新为v2后,它不再识别手势。 它会触发’switch(event.type)’,但会跳过所有情况。 “案例”不再受支持吗? 代码示例: function handleHammer(event) { // disable browser scrolling event.preventDefault(); switch(event.type) { case ‘tap’: the_single_post.removeClass(‘grab’); var tapPos = (event.gesture.center.pageX) – (element.offset().left); if (tapPos > paneWidth/2) { hammer.next(‘easeinout’); } else if (tapPos < paneWidth/2) { hammer.prev('easeinout'); } break; case 'drag': (etc.) } }

重新点击输入字段时,jQuery Datepicker挂起(Chrome)

我有这个jsFiddle: http : //jsfiddle.net/VebTY/ 看起来这只是chrome中的一个问题。 当您单击页面中的某个项目时,它会添加一个文本字段,然后会弹出日期选择器。 当您单击文本框然后返回文本框时,浏览器将挂起5-10秒。 为什么这样做,我该如何解决? 这是我的相关代码: $(document).on(“focus”, “td input[type=text]”, function(e) { e.stopPropagation(); if ($(this).closest(“td”).attr(“data-type”) === “date”) { var dt = $(this).val(); $(this).not(“.hasDatePicker”).datepicker(); $(this).datepicker(“setDate”, dt); } }); $(“.editable”).click(function(e) { if (!$(e.target).is(‘input, textarea’)) { $(“.editable”).each(function() { if ($(this).has(“input”)) { var v = $(this).children(“input.input, textarea”).attr(“data-orig”); $(this).text(v); } }); var type = $(this).attr(“data-type”); var val = […]

javascript中的Jquery需要两次点击

我用jquery写了一个simpe内联编辑。 插件工作得很好,但是我在javascript函数中调用脚本时遇到问题,需要2次点击才能激活插件。 有谁知道解决这个问题的方法..我只想点击一下! 提前致谢。 Let’s update function update(id) { $(“#edit” + id).kb_edit(); }

从img标签获取背景图片url,并使用该url创建新的img标记

我有这个 我想拿这个(背景)url并在同一个div中用src =“background img url”创建新的img标签,并使用js或jq删除旧的img标签 我试图这样做 var img = document.querySelector(‘img’), // parse image URL and strip away url(”) imgURL = img.style.backgroundImage.replace(‘url(“‘,”).replace(‘”)’,”); img.src = imgURL; // remove style attribute afterwards. img.removeAttribute(‘style’); 但它不适合我,所以我必须以另一种方式做到这一点

逐个输入应在结果字段中显示添加的结果

当用户在第一组的单选按钮中选择任何选项,然后在相应的输入字段中输入任意数字,然后选择下一个任何单选项并在输入字段中输入任何值,那么这次应该将旧结果添加到旧的并显示在结果输入字段中,现在如果他清空任何输入字段,那么它也应该减去总结果并将其显示在结果字段中。 我有这么多团体,但在这里,我只是把其中两个得到了结果。 这里是FIDDLE 这是jquery代码。 我可以在jquery工作,但不是很好我为每个组使用单独的代码,我知道必须有一种方法通过通用代码获得这整个function,但我又不擅长jquery jQuery(“#txt_im”).keyup(setValue); jQuery(‘[name=”rdbtn-im”]’).change(setValue); function setValue() { var txt_value = jQuery(“#txt_im”).val(); var rad_val = jQuery(‘[name=”rdbtn-im”]:checked’).val(); if(!txt_value.length) { jQuery(‘#final_res’).val(”); return; } if (!rad_val.length) return; var res = txt_value * rad_val; var final = parseInt(res, 10); var MBresult = final / 1024; jQuery(‘#final_res’).val(MBresult.toFixed(2)); } var final2 = 0; jQuery(“#txt_fb”).keyup(setValue2); jQuery(‘[name=”rdbtn-fb”]’).change(setValue2); function setValue2() { var […]

Jquery函数多个上传字段单独添加

我有一个联系表单,我使用联系表单7为wordpress设置。 我想知道的是,如果有一个function,当用户点击添加按钮时,会出现一个新的文件上传选项,这样他们最多可以有5个文件上传字段,但最初只显示1个,然后再添加另一个需要它。 我发现了这个: http : //kg69design.com/multiple-files-uploading-cf7.html但我似乎无法让它工作 任何帮助,将不胜感激。 谢谢

Jqueryhover与单击可扩展菜单

客户端有一个Magento内置的站点,并且有一些javascript控制菜单的显示方式: jQuery(‘.nav-add li.level0, .nav li’).hover( function(){ jQuery(this).children(‘.nav-widget:not(.inSlide), ul:not(.inSlide)’).addClass(‘inSlide’).slideDown(700,function(){ }); }, function(){ jQuery(this).children(‘.nav-widget, ul:not(.active)’).delay(‘2000’).slideUp(500,function(){ jQuery(this).removeClass(‘inSlide’); }); } ) jQuery(‘.nav-widget’).hide(); 现在,只要用户在项目上hover,它就会被扩展,但尝试以这种方式导航是相当烦人的。 是否可以修改此代码,以便在用户单击某个项目时进行扩展? 我尝试用.click或.mouseup替换.hover无济于事。

在DIV中水平滚动项目而不是垂直滚动?

有没有人知道浮动元素的有效方法,以便它们在容器中水平滚动而与垂直方向相反? 例如,假设我有这样的布局: something something something something something 据我所知,如果我给“容器”一个定义的高度和宽度,所有“项目”都可以浮动,以便“容器”将水平滚动。 但是,如果我不知道会有多少“项目”呢? 如果我不知道物品的数量,那么我不知道容器应该多宽…… 有什么想法或建议吗? 仅CSS的建议是理想的,但我不反对使用jQuery插件,如果有人有任何建议。