【问题标题】:Form submit not working in loop using jquery表单提交不能使用jquery循环工作
【发布时间】:2011-03-11 19:39:50
【问题描述】:

在本网站:http://www.lenovowarranty.co.in/contacttech.asp 我想循环提交第一个表单(id-#splocator2),以获取各州服务中心的地址。

我希望每个地址都在新标签页中打开。 我正在使用 Firefox,并在 Firebug 控制台中键入以下代码。

但是这段代码只执行一次(并且只有一个标签被打开,value=1,这只是第一个状态:

$("#splocator2").attr("target","_blank");
for(i=1;i<5;++i){
$("#stateid").attr("value",""+i);
$("#splocator2").submit();}

甚至

$("#splocator2").attr("target","_blank");
$("#stateid").attr("value","1");
$("#splocator2").submit();
$("#stateid").attr("value","2");
$("#splocator2").submit();

如何让这个表单自动提交状态的所有“选择”组合框值,以便每个地址在新窗口中打开?

【问题讨论】:

    标签: javascript jquery forms firebug submit


    【解决方案1】:

    尝试使用 .each 循环遍历每个表单元素,然后手动提交它们。

    $.each($('#splocator2', function(i, item) {
        $(item).attr("target","_blank");
        $(item).submit();
    }
    

    【讨论】:

    • 这个语法正确吗? “i”如何自动递增?
    • 是的,这对 jQuery 来说是正确的。 i 将保留当前位置的索引,并且 item 具有对实际 item 的引用。
    【解决方案2】:

    在 for 循环中放置 _blank 行使其工作:

    $("#splocator2").attr("target","_blank");

    【讨论】:

      猜你喜欢
      • 2021-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-21
      • 1970-01-01
      • 1970-01-01
      • 2011-08-08
      • 1970-01-01
      相关资源
      最近更新 更多