我需要创建一个T& C的启动页面,用户勾选该框,然后启用提交按钮并将其转发到正确的页面。
目前我无法弄清楚为什么以下代码使条款复选框成为活动链接 - 单击它以选中该框从window.open加载页面
如果我注释掉两个window.open行,它全部按预期工作但没有链接功能。显然,我正在尝试创建一个适用于所有移动和桌面客户端的页面,否则我会在按钮html中使用内联onclick。
感谢您的帮助......
<script>
function disableSubmit() {
document.getElementById("submit").disabled = true;
}
function activateBox(element) {
if(element.checked) {
document.getElementById("submit").disabled = false;
document.getElementById("submit").value = "Press here to go online";
document.getElementById("submit").onclick= window.open('<?php print $grant_url ?>');
document.getElementById("submit").ontouchstart= window.open('<?php print $grant_url ?>');
}
else {
document.getElementById("submit").disabled = true;
document.getElementById("submit").value = "Please agree to T&C's";
}
};
</script>
&#13;
<form>
<input type="checkbox" name="terms" id="terms" onchange="activateBox(this)" autofocus />
I Agree to the Terms & Conditions <br>
<input class="button" name="submit" value="Please agree to T&C's" id="submit" title="Continue to the Internet" />
</form>
&#13;
答案 0 :(得分:0)
这应该有效(将window.open
调用包装在匿名函数中)
<script>
function disableSubmit() {
document.getElementById("submit").disabled = true;
}
function activateBox(element) {
if(element.checked) {
document.getElementById("submit").disabled = false;
document.getElementById("submit").value = "Press here to go online";
document.getElementById("submit").onclick= function() { window.open('<?php print $grant_url ?>'); }
document.getElementById("submit").ontouchstart= function() { window.open('<?php print $grant_url ?>'); }
}
else {
document.getElementById("submit").disabled = true;
document.getElementById("submit").value = "Please agree to T&C's";
}
};
</script>