jQuery是一个Javascript库,考虑添加Javascript标记。 jQuery是一个流行的跨浏览器JavaScript库,它通过最小化浏览器之间的差异来促进文档对象模型(DOM)遍历,事件处理,动画和AJAX交互。标记为jquery的问题应该与jquery相关,因此有问题的代码应该使用jquery,并且至少需要jquery与用法相关的元素。
我想上传大量图像文件(最大大小10mb)。 为此,我使用以下配置:struts.xml: 我想上传大量图像文件(最大大小10mb)。 为此,我使用以下配置:struts.xml: <interceptors> <interceptor-stack name="fileUploadStack"> <interceptor-ref name="exception" /> <interceptor-ref name="alias" /> <interceptor-ref name="servletConfig" /> <interceptor-ref name="prepare" /> <interceptor-ref name="i18n" /> <interceptor-ref name="chain" /> <interceptor-ref name="debugging" /> <interceptor-ref name="profiling" /> <interceptor-ref name="scopedModelDriven" /> <interceptor-ref name="modelDriven" /> <interceptor-ref name="fileUpload"> <param name="maximumSize">10485760</param> <param name="allowedTypes">image/jpg,image/jpeg,image/gif,image/png,image/pjpeg</param> </interceptor-ref> <interceptor-ref name="checkbox" /> <interceptor-ref name="staticParams" /> <interceptor-ref name="actionMappingParams" /> <interceptor-ref name="params"> <param name="excludeParams"> dojo\..*,^struts\..*</param> </interceptor-ref> <interceptor-ref name="conversionError" /> <interceptor-ref name="validation"> <param name="excludeMethods"> input,back,cancel,browse</param> </interceptor-ref> <interceptor-ref name="workflow"> <param name="excludeMethods"> input,back,cancel,browse</param> </interceptor-ref> </interceptor-stack> </interceptors> <action name="ownmessageswithimage" class="social.action.UserMessages" method="insertImage"> <result name="success">/pages/profile/userSingleMessage.jsp</result> <result name="input">/pages/errorpages/ajaxError.jsp</result> <result name="login">/pages/pleaselogin.jsp</result> </action> 编辑: 这是我的JSP文件代码: <script type="text/javascript" src="js/jquery.form.js"></script> <form id="own_message_post" action="ownmessageswithimage" method="post"> <input id="fileupload" type="file" name="user_post_image" data-url="ownmessages" /> <textarea name="message" rows="4" cols="45" id="text_message_status" ></textarea><br> <input type="submit" value="Post" id="submit_form_button" style="background:#004091;padding: 2px 20px 2px 20px;color: whitesmoke;font-weight: bold" /> </form> <script type="text/javascript"> $('#own_message_post').ajaxForm(function(data) { $('#fileupload').val(""); }); </script> 我正在使用异步文件上传脚本, 但问题是它不能上传最多 10 MB 的大文件。 如何使其成为可能? 您应该将常量添加到配置文件中以允许多部分内容大小达到 10M <constant name="struts.multipart.maxSize" value="10485760"/> 我不确定它是否有帮助,但我在客户端使用表单时使用了多部分加密来上传大文件。 这是从文件输入框中以表单形式发送一个文件。 不过我对 struts 不太确定。 似乎<param name="allowedTypes">image/jpg,image/jpeg,image/gif,image/png,image/pjpeg</param>只允许您上传此类类型的图像。在那里添加其他 MIME 类型,例如text/xml 或 任何其他类型
我正在使用 Laravel 11 和 jQuery 我有这个错误: 错误 404:未找到 { "message": "找不到路由 %7B%7B%20route('columns.all')%20%7D%7D。", “例外&...
我想做的是将值推入数组,如下所示: var 旅行者 = [['travellerUsername1', 'travellerFullname1'],['travellerUsername2', 'travellerFullname2'], ['travellerUsername3', '
上下文: 将值添加到输入字段: $('输入:复选框').change((e) => { if ($(e.currentTarget).is(':checked')) { var curVal = $('#name').val(); 如果(curVal){ ...
使用ajax删除数据的帖子ID显示控制器路由中缺少必需的参数
我正在尝试通过数据表删除按钮删除数据。但我收到错误。 我创建的路线为: 路线::资源('经销商', DealerController::class); 我的控制器功能:: 公共职能...
假设您有一个来自服务器的带注释的html结构(注释是为了提高渲染速度,如FB)。之后我们应该删除我们的内容并允许浏览器渲染 html。 W...
我使用以下代码将变量从 JSP 发送到 Java: 我使用此代码将变量从 JSP 发送到 Java : <s:hidden name="checkActes" id="checkActes"></s:hidden> <s:checkbox id="checkActes" labelposition="left" cssClass=" block-left check" label="%{getText('prestationPsDto.actes')}" key="prestationPsDto.actesSpec"/> 添加hidden属性后,JS中的action不起作用: $('#checkActes').on('click',function() { console.log("kjfffkj"); if($('#checkActes').is(':checked')){ console.log("kjkj") $("#cleCotation").show() } else{ $("#cleCotation").hide() $('#cleCotation').find("input,select").val(''); } }); 我想问题是因为我在 JSP 和 JS 中使用相同的id。 有什么办法可以解决这个问题吗? Struts 标签 id 属性用于 HTML ID 属性。两个输入 hidden 和 select 具有相同的 ID,但 JavaScript 代码找到第一个,但应使用第二个。 问题的解决方案是对 id 属性使用不同的值。 <s:hidden name="checkActes" id="checkActesID"></s:hidden> 您可以在文档站点上找到如何使用 struts 标签的详细信息。 对于该问题有一个类似的答案,其中有指向文档网站的链接
我希望在此脚本上使用回调 - 第三个回调 onSlideChangeStart(swiper) http://idangero.us/swiper/api/#.V9CMp5grJlY 但我从未使用过回调并且不知所措停在哪里...
我有以下 PUG 模板: 扩展布局 块附加头 链接(type='stylesheet', href='/stylesheets/mystyle.css', rel='stylesheet') 块布局内容 #聊天应用程序 #chat.has-text-
JavaScript onClick 事件无法在带有 Divi 主题的移动设备上工作 - 在桌面上工作
我遇到了 JavaScript onClick 事件无法在具有 Divi 主题的移动设备上触发的问题,即使相同的事件在桌面上运行良好也是如此。目标是在移动设备上打开模式,但它...
我有一个特定的用例,我似乎找不到答案。给定以下 DOM 元素: &... 我有一个特定的用例,但我似乎找不到答案。给定以下 DOM 元素: <div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> 我需要找到 .selected 元素与其兄弟元素的索引。但我需要忽略任何具有 .foo 子元素的兄弟元素(它只会是直接子元素)。 因此,通常要查找 .item .selected 的索引,您可以使用 $(".item.selected").index() 给出 4,但由于它之前的一项有 .foo 子项,所以正确答案是 3。 我想,最好的方法是获取所选元素之前的所有兄弟姐妹(因为之后的兄弟姐妹不会移动它的索引),然后计算有多少个有.foo子元素,然后减去它所选索引中的数字,因此 4-1=3。我尝试这样做: var selectedIndex = $(".item.selected").index(); var fooCount = $(".item.selected").prevAll('.item > .foo').length; var finalIndex = selectedIndex - fooCount; 问题是,fooCount 即将出现 0 而不是 3。 您可以简单地使用 .filter() 并删除前面具有给定子元素的元素。 const selected = $('.selected'); const foos = selected.prevAll().filter(function() { return !($(this).find('.foo').length); }); console.log(selected.index(), foos.length);<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> 使用此选择器".item:not(:has(.foo))",然后循环查找特定索引。 var index = $(".item:not(:has(.foo))") .toArray() .findIndex(function(item) { return $(item).hasClass('selected'); }); console.log(index);<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> 你很接近。 改变: var fooCount = $(".item.selected").prevAll('.item > .foo').length; …至: var fooCount = $(".item.selected").prevAll('.item:has(.foo)').length; 否则,您正在寻找一个具有 .foo 类别的 兄弟姐妹,而您实际上想要一个具有 .foo 类别的 孩子 的兄弟姐妹。 片段: var selectedIndex = $(".item.selected").index(); var fooCount = $(".item.selected").prevAll('.item:has(.foo)').length; var finalIndex = selectedIndex - fooCount; console.log(finalIndex);<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> 您可以组合: :not():选择与给定选择器不匹配的所有元素。 :has():将匹配元素的集合减少到具有与选择器或 DOM 元素匹配的后代的元素。 :index(element):其中 element 是要查找的 DOM 元素或 jQuery 对象中的第一个元素。 因此,您可以更改代码: var selectedIndex = $(".item.selected").index(); 至: var selectedIndex = $('.item:not(:has(.foo))').index($('.item.selected')); var selectedIndex = $('.item:not(:has(.foo))').index($('.item.selected')); console.log(selectedIndex );<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> JavaScript 解决方案比 jQuery 解决方案更直接: 不忽略特定的兄弟姐妹: Array.from(element.parentElement.children).indexOf(element); 忽略特定的兄弟姐妹: Array.from(element.parentElement.children).filter((sibling) => !sibling.querySelector(':scope > .foo')).indexOf(element); // ":scope" just selects the 'sibling' element 这是工作代码: let element = document.querySelector('.wrapper .item.selected'); let allSiblings = Array.from(element.parentElement.children); let filteredSiblings = allSiblings.filter((sibling) => !sibling.querySelector(':scope > .foo')); console.log('Sibling Index: ' + allSiblings.indexOf(element)); console.log('Filtered Sibling Index: ' + filteredSiblings.indexOf(element));<div class="wrapper"> <div class="item"></div> <div class="item"> <div class="foo"></div> </div> <div class="item"> <div class="bar"></div> </div> <div class="item"></div> <div class="item selected"></div> <div class="item"></div> </div> 一切都已经有完整的浏览器支持很长时间了,唯一的问题是 :scope 但自 2014 年 9 月以来就得到了全面支持,如果可以像其他答案一样用 .item > .foo 替换...但可能会导致问题,如果您在某个时候已经嵌套了 .item 孩子。 您也可以将 Array.from(children) 替换为 [...children]。
我有一个导航,可以说有 12 个项目,当分辨率变小时,项目会放在新行中。我需要做到当一个项目不再适合导航时,它应该放置一个“更多”下拉...
我正在使用 GrapeJS 进行一个项目,并已使用该标签成功实现了自定义图像上传功能。现在,我需要对视频做类似的事情。具体来说,我想: 一个...
我有一个舞台(id="box"),当光标在这个舞台上移动时,一个红色圆圈会随着光标移动。 一切都按预期进行,但光标位于红色圆圈之外。 我...
jquery 获取主 css 值而不是当前的 @media/mobile 值
我几乎不发帖,因为我通常可以找到答案,但我已经搜索了几个小时,我的头感觉要爆了……无论如何 我正在寻找“桌面”的 css 值
Jquery Ajax 调用不通过 Post 请求发送所有变量
读了又读,我不知道为什么有两个变量没有通过,但有一个变量却通过了。 JQuery Ajax 调用(LAMP 环境): $(文档).ready(函数() { $('#</desc> <question vote="0"> <p>反复阅读,我不知道为什么有 2 个变量没有通过,但有一个变量却通过了。 JQuery Ajax 调用(LAMP 环境):</p> <pre><code><script type="text/javascript"> $(document).ready(function() { $('#postComment').click(function(e) { e.preventDefault(); var articleId = $('#articleId').val(); var commTitle = $('#commTitle').val(); var commBody = $('#commBody').val(); alert(articleId + commTitle + commBody); $.ajax({ type: "POST", url: 'https://www.d o m a i n.com/content/inc/postComment.php', // removed actual domain for this posting data: {"articleId": articleId}, // this var does not pass to postComment.php data: {"commTitle": commTitle}, // this var does not pass to postComment.php data: {"commBody": commBody}, // this var DOES pass to postComment.php success: function(response) { $('#responseComm').css('color', 'green'); $('#responseComm').val('Comment submitted successfully!'); $("#response").html('There is outcome while submit' + commTitle + '<p>' + commBody); } }); }); }); </script> </code></pre> <p>HTML 为:</p> <pre><code> <form action="#"> <div class="row g-4"> <div class="col-lg-6"> <input type="hidden" name="articleId" id="articleId" value="<?php echo $articleid; ?>"> <input type="text" class="form-control py-3" placeholder="<?php echo $_SESSION['username']; ?>" disabled> </div> <div class="col-lg-6"> <input type="text" class="form-control py-3" placeholder="<?php echo $articleTitle; ?>" value="<?php echo $articleTitle; ?>" name="commTitle" id="commTitle"> </div> <div class="col-12"> <textarea class="form-control" name="commBody" id="commBody" cols="30" rows="7" placeholder="Write Your Comment Here"></textarea> </div> <div class="col-12"> <button class="form-control btn btn-primary py-3" type="button" id="postComment">Submit Now</button> </div> </div> </form> </code></pre> <p>脚本中的其他地方未使用变量</p> <p>上面的代码片段都在同一个脚本中</p> <p>提前谢谢?</p> </question> <answer tick="false" vote="0"> <p>鉴于您的表单具有与您要使用 AJAX 发送的键同名的元素,最简单的方法是:</p> <ol> <li><p>向表单添加 <pre><code>id</code></pre>,以便 jQuery 可以识别它。例如,“新文章形式”。</p> </li> <li><p>将三行 <pre><code>data:</code></pre> 替换为:</p> <p><pre><code>data: $("#new-article-form").serialize()</code></pre></p> </li> </ol> <p>使用 jQuery 的 serialize() 函数,<a href="https://api.jquery.com/serialize/" rel="nofollow noreferrer">如此处所述</a>。</p> </answer> </body></html>
如何使用Struts2 jQuery插件<sj:submit>按钮?
我有 Struts 2 jQuery 插件 按钮,当我单击该按钮时,它不会像 Struts 按钮那样触发操作类。我需要在点击后保留相同的页面...
如何通过 Ajax POST 请求发送 JSON 数据并从 Struts 2 中的操作接收 JSON 响应?
我试图了解如何在 Struts 2 中使用 JSON,在此过程中,我尝试从 Struts 2 操作获取 JSON 响应并显示该响应的警报。为此,我使用 Ajax POST...
如何在vue js html中根据时间显示“已关闭”或“打开”?
这是我的json数据,用于显示商店的营业时间: { “状态”:真实, “数据”: { “pid”:1, “企业名称”:“ard”...
使用Javascript停用外部集成的Javascript文件
我已在我的标头代码(Google AdSense)中包含以下内容。 现在我正在寻找一种通过 Javascript 停用该行的方法: <p>我已在我的标头代码 (Google AdSense) 中包含以下内容。</p> <p>现在我正在寻找一种通过 Javascript 停用此行的方法:</p> <pre><code><script type="text/javascript" src="https://domain.tld/javascript-file.js"></script> </code></pre> <p>使用CSS(显示:无)不起作用,因为无论如何都会执行此代码。</p> <p>如果在此外部 JS 中定义了此行,我想使用外部 JS 停用此行(以便不再执行)。</p> <p>谢谢。</p> </question> <answer tick="false" vote="0"> <p>在脚本标签之前写入此内容,以在执行之前删除特定的脚本标签:</p> <pre><code>var scriptTags = document.getElementsByTagName('script'); for(let idx = scriptTags.length-1; idx >= 0; idx--){ if(scriptTags[idx].src == "https://domain.tld/javascript-file.js"){ var parent = scriptTags[idx].parentNode; if(parent) parent.removeChild(scriptTags[idx]); } } }); </code></pre> <p>试试这个。仅当脚本标记是文档结构的一部分并且尚未运行时,此功能才会起作用。显然,一旦脚本运行,就无法将其删除。</p> </answer> </body></html>