多个复选框值搜索javascript

多个复选框值搜索javascript,javascript,jquery,checkbox,submit,Javascript,Jquery,Checkbox,Submit,我有一个关键字列表,并为每个关键字创建了一个复选框。我的模板有一个包装内容的表单,因此我不能在复选框列表周围有嵌套表单 如何将选中的复选框值发送到搜索结果页面 包装内容的表单未应用任何操作或方法: <form id="BoostMasterForm" runat="server"> 如果有人能帮忙,我将不胜感激 干杯,JV我还是不清楚。但这里有一段代码,您可以在其中构建一个字符串并传递它 <script type="text/javascript"> funct

我有一个关键字列表,并为每个关键字创建了一个复选框。我的模板有一个包装内容的表单,因此我不能在复选框列表周围有嵌套表单

如何将选中的复选框值发送到搜索结果页面

包装内容的表单未应用任何操作或方法:

<form id="BoostMasterForm" runat="server">
如果有人能帮忙,我将不胜感激


干杯,JV我还是不清楚。但这里有一段代码,您可以在其中构建一个字符串并传递它

    <script type="text/javascript">
function fnc()
{
    elements=document.getElementById("BoostMasterForm").elements;
    str="";
    for(i=0;i<elements.length;++i)
    {
        if(elements[i].type=='checkbox' && elements[i].checked)
        str=str+elements[i].value;
    }
    alert(str);
    //alert(window.location.href+'?str='+str);
//document.getElementById("aform").submit();
}
</script>

<form id="BoostMasterForm" onsubmit="fnc()">
<div class="checkboxes">
  <ul>
    <li>
      <input type="checkbox" id="search1" name="search" class="options" value="one">
      <label>one</label>
    </li>
    <li>
      <input type="checkbox" id="search2" name="search" class="options" value="two">
      <label>two</label>
    </li>
    <li>
      <input type="checkbox" id="search3" name="search" class="options" value="three">
      <label>three</label>
    </li>
  </ul>
  <input type="submit" value="Submit"/>
</div>
</form>

函数fnc()
{
elements=document.getElementById(“BoostMasterForm”).elements;
str=“”;

对于(i=0;i这适用于您的示例

$('input[type=submit]').on('click', function(evt) {
    var selectedValues = [];
    var url = '/imagery/image-search.aspx?search=';

    $('input[type=checkbox]:checked').each(function() {
        selectedValues.push($(this).val());
    });

    url += selectedValues.join(' ');

    window.location = url;
});​

你想要的东西让人困惑。你想附加一些东西还是像你说的那样传递URL?我不确定它是否需要附加到表单中的操作和方法。但它需要在提交时发送所选复选框的值。多亏了@mleroy你的耐心和努力,我才得以工作。问题是s我的页面模板中的现有表单不允许提交页面。我删除了该表单,它成功了。感谢againThanks,但是列表是动态的,除了我提供的示例之外,还会有不同的复选框值。警报有效,但当我选择多个选项时,它们会显示在警报中,如:“OneToThree”它们会在搜索时分开吗?不会,但我相信您可以找到如何在polin代码中的值之间添加空格的方法!:)我只是尝试了一下,但没有成功。它需要引用表单id吗?我可以在JSFIDLE中使用它,但我的页面上没有jQuery 1.7.2,但我无法使用它。到底是什么不起作用?你能打开浏览器的javascript控制台,看看是否出现任何错误吗?你如何包含jQuery以及你把代码放在哪里在您的页面上?如果需要,请发布完整的代码。好的,我已经让它与我的网站上显示的警报一起工作。但是,当我将其更改为window.location=url时,它不会转到image-search.aspx页面,请尝试将url设置为绝对url(so)。提供更多详细信息,说明哪些不工作以及您是否看到错误。
    <script type="text/javascript">
function fnc()
{
    elements=document.getElementById("BoostMasterForm").elements;
    str="";
    for(i=0;i<elements.length;++i)
    {
        if(elements[i].type=='checkbox' && elements[i].checked)
        str=str+elements[i].value;
    }
    alert(str);
    //alert(window.location.href+'?str='+str);
//document.getElementById("aform").submit();
}
</script>

<form id="BoostMasterForm" onsubmit="fnc()">
<div class="checkboxes">
  <ul>
    <li>
      <input type="checkbox" id="search1" name="search" class="options" value="one">
      <label>one</label>
    </li>
    <li>
      <input type="checkbox" id="search2" name="search" class="options" value="two">
      <label>two</label>
    </li>
    <li>
      <input type="checkbox" id="search3" name="search" class="options" value="three">
      <label>three</label>
    </li>
  </ul>
  <input type="submit" value="Submit"/>
</div>
</form>
$('input[type=submit]').on('click', function(evt) {
    var selectedValues = [];
    var url = '/imagery/image-search.aspx?search=';

    $('input[type=checkbox]:checked').each(function() {
        selectedValues.push($(this).val());
    });

    url += selectedValues.join(' ');

    window.location = url;
});​