Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何调整此脚本以在选中时包含复选框_Javascript_Javascript Events - Fatal编程技术网

Javascript 如何调整此脚本以在选中时包含复选框

Javascript 如何调整此脚本以在选中时包含复选框,javascript,javascript-events,Javascript,Javascript Events,我对javascript一窍不通。我在我的头标记之间使用此脚本,这将强制用户在点击提交按钮之前滚动文本区域 <script language="JavaScript"> <!-- function textareaAtEnd(textareaObj) { return ((textareaObj.scrollTop + textareaObj.offsetHeight) > textareaObj.scrollHeight); } function formV

我对javascript一窍不通。我在我的
标记之间使用此脚本,这将强制用户在点击提交按钮之前滚动
文本区域

<script language="JavaScript">
<!--

function textareaAtEnd(textareaObj)
{
    return ((textareaObj.scrollTop + textareaObj.offsetHeight) > textareaObj.scrollHeight);
}

function formValidation(formObj)
{
    if (textareaAtEnd(formObj.licenseAgreement))
    {
        return true;

    } else {
        alert ("Please scroll to the end to move on.")
        return false;
    }

}

// -->
</script>

我的
如下所示:

<form action="step2.php" method="post" onSubmit="return formValidation(this);">
    <textarea name="licenseAgreement" rows="20" cols="90">Very long license agreement text</textarea>
    <br />
    <input name="agree" type="checkbox" value="yes" /> I have read and agreed the above license agreement
    <br />
    <input type="submit" value="CONTINUE">
</form>
<input name="agree" id="agree" type="checkbox" value="yes" />

...

<textarea name="licenseAgreement" id="licenseAgreement" rows="20" cols="90">

非常长的许可协议文本

我已阅读并同意上述许可协议
如何调整此javascript以检查是否选中了
,以及是否不向用户回显消息?我是个十足的傻瓜,这是我第一次使用javascript。

给你:

if (document.getElementById('agree').checked == false) { 
    alert('Check the agree box dummy!');
}
对于客户端代码,我始终建议使用ID是一种最佳实践

因此,您可以将验证功能更改为:

function formValidation() {
    if (textareaAtEnd(document.getElementById('licenseAgreement')) == false) {
        alert ("Please scroll to the end to move on.")
        return false;
    } 
    else if (document.getElementById('agree').checked == false) {
        alert('Check the agree box dummy!');
        return false;
    }
    else {
        return true;
    }
}
还要确保在您的
do中添加
id=“agree”


演示:

使用
选中的
属性:

var checkbox = document.getElementsByName("agree")[0];

if(checkbox.checked) 
  alert("Check that");

更换

<input name="agree" type="checkbox" value="yes" />

getElementsByName
返回一个集合。
var checkbox = document.getElementsByName("agree")[0];

if(checkbox.checked) 
  alert("Check that");
<input name="agree" type="checkbox" value="yes" />
<input name="agree" id="agree" type="checkbox" value="yes" />
if(document.getElementById("agree").checked == false)
{
    alert("Checkbox is not checked , please select checkbox");
}