在我的表单中有一个下拉列表,单击按钮时我需要打开 2 个 URL,如果用户选择选项 1,则在单击按钮后会出现一个感谢页面,并且应该打开另一个 URL。
我目前只能打开一个 URL。请看看我的小提琴。
此外,在我的页面中,按钮很少,我希望它们最初应该被禁用,这样它们就不再起作用了。我想强制用户先填写表格,然后只有他可以访问其他按钮。
伙计们感谢您的支持。
在我的表单中有一个下拉列表,单击按钮时我需要打开 2 个 URL,如果用户选择选项 1,则在单击按钮后会出现一个感谢页面,并且应该打开另一个 URL。
我目前只能打开一个 URL。请看看我的小提琴。
此外,在我的页面中,按钮很少,我希望它们最初应该被禁用,这样它们就不再起作用了。我想强制用户先填写表格,然后只有他可以访问其他按钮。
伙计们感谢您的支持。
您可以存储多个 URL,用类似的东西分隔它们'|'
,然后用于split
创建 URL 列表。第一个值将始终存在(如果您只有一个 url,split 将生成一个包含单个元素的数组),第二个值将仅存在于您指定两个 URL 的选项。
<option value="google.com|stackoverflow.com">Two URLs</option>
val = val.split('|');
window.open(val[0]);
if ( val.length > 1 )
window.open(val[1]);
至于您的其他问题,请disabled
在您的按钮上添加属性,以及必须填写的每个输入:
$(selector_with_all_fields).change(function() {
var allFilled = true;
$(selector_with_all_fields).each(function() {
allFilled = allFilled && $(this).val() !== "";
});
$(my_buttons).attr("disabled",allFilled); // If that doesn't work, try removeAttr when allFilled is false
});
请记住以 HTML 开头"disabled"="true"
。
您可以尝试的一件事是从选择选项中调用 onchange 函数。我认为它更清洁,以后会帮助你。这是我尝试过的
<select name="interest_c" id="interest_c" class="required" onchange="report(this.value)">
<option selected="selected" value="">Indicate your interest...</option>
<option value="1">I want a Free Trial</option>
<option value="2">I want to see a pre-recorded demo</option>
</select>
<script type="text/javascript">
function report(selectval) {
switch(parseInt(selectval)) {
case 1:
window.open("http://www.stackoverflow.com");
window.open("http://www.google.com");
break;
case 2:
window.open("http://www.facebook.com");
window.open("http://www.php.net");
break;
}
}
</script>
我在 jsfiddle http://jsfiddle.net/eXSND/上试过
希望这可以帮助