在提交时打开Checkbox多个选项卡

时间:2014-07-08 07:02:08

标签: javascript jquery checkbox

对于任何JavaScript或JQuery,我都是绝对的初学者。如果选中它们然后单击提交按钮,我会尝试在新选项卡中打开一些复选框。只有选中一个复选框时,我才能使用该代码。如果选中多个,则仅在选项卡中打开第一个。我的代码如下:

的Javascript

function CheckCheckboxes(form)
{
var
    i, counter = 0;

for (i = 0; i < form.elements.length; ++i) {
    if ('checkbox' === form.elements[i].type && form.elements[i].checked) {++counter;
        window.open('http://' + form.elements[i].value, '_blank');
    }
}
if (!counter) {
    alert('Please check at least one!');
}
}

HTML

<form onsubmit="CheckCheckboxes(this); return false;">
<table align="left" border="1" style="border-collapse: collapse;">

<tr style="height:30px">
    <td colspan="8"><center>Companies</center></td>
</tr>

<tr>
     <td><input type="checkbox" name="Google" value="www.google.com" />Google</td>
     <td><input type="checkbox" name="Apple" value="www.apple.com" />Apple</td>
     <td><input type="checkbox" name="Microsoft" value="www.Microsoft.com" />Microsoft</td>
     <td><input type="checkbox" name="facebook" value="www.facebook.com" />Facebook</td>

 <td><br /><input type="submit" value="Send Form" /></td>
</tr>

</table>
</form>

非常感谢任何帮助。在这里待了3个半小时:))

由于

1 个答案:

答案 0 :(得分:2)

您的代码正在运行,但浏览器在显示第一个窗口后阻止了新窗口。默认情况下,浏览器阻止来自网站的多个弹出窗口,您可以将其关闭,但不要指望您的用户也这样做。

请参阅Fiddle

您的代码window.open('http://' + form.elements[i].value, '_blank');有效:)

enter image description here