在复选框选择后验证输入类型文本
Validating input type text after Check Box Selections
我一直在通过10个简单的步骤从javascript学习js。在任务 104 上,有在复选框选择后验证输入类型文本的任务。但是,我对选中复选框后如何抓取文本字段感到困惑。检查复选框是否选中后,我尝试将语法formName.TextareafieldName
的文本字段。
然而在书中,遵循的语法是form.formName.TextareafieldName
。在浏览器中输出时,它显示仅选中复选框,但无法抓取显示ERR_FILE_NOT_FOUND的文本。我的代码如下。
<form name="myForm" action="js_form_validation_with_inputcheckbox.html"
onSubmit="return checkForm(this);">
<input type="checkbox" name="myCheck" value="Checked"> Check Here<br>
If checked, enter your name:
<input type="text" name="myText"><br>
<input type="submit">
</form>
还有这里的脚本:
<script>
function checkList(check) {
if (check.checked) {
if (myForm.myText.value.length == 0) {
window.alert("You have checked the check box;you must provide your name.");
return false;
}
}
return true;
}
function checkForm(formObj) {
return checkList(formObj.myField.value);
}
</script>
如果有人能消除我的困惑,我将不胜感激。
从 checkForm 传递formObj.myField.value
,但没有名为 myField 的控件。也许你的意思是我的支票?
此外,checkList 函数似乎需要一个控件,而不是一个值,因此传递控件。
尝试:
function checkForm(formObj) {
// Pass the checkbox control using its name
return checkList(formObj.myCheck);
}
关于:
> i tried to grab the textfield with syntax as formName.TextareafieldName
文档具有一个表单集合,该集合是文档中的所有表单。成员可以按索引或其名称或 ID 引用。在某些浏览器中,ID 将成为引用表单的全局变量,但使用该功能被认为是一个坏主意。
您可以使用以下命令引用表单:
document.forms.myForm
或
document.forms[0]
假设它是文档中的第一个或唯一的表单。同样,控件可以作为窗体的命名成员进行访问,因此:
var form = document.forms[0];
var myCheck = form.myCheck;
窗体还具有一个元素集合,该集合是窗体中(或属于窗体)的所有控件,因此您还可以执行以下操作:
var myCheck = form.elements.myCheck;
或
var myCheck = form.elements[0];
如果 myCheck 是窗体中的第一个控件。
您可以使用此表单作为示例...
<form>
First name:<br>
<input name="firstname" id="firstname" type="text">
<br>
Last name:<br>
<input name="lastname" type="text">
</form>
<br>
<p>
<input onchange="checkList(this);return false;" id="change" type="checkbox">
<span id="sp-change"></span></p>
这是脚本代码...
function checkList(ch) {
if (ch.checked) {
var textBox = document.getElementById("firstname");
var textLength = textBox.value.length;
if (textLength == 0) {
window.alert("You have checked the check box;you must provide your name.");
return false;
} else {
window.alert("Success");
return true;
}
}
return false;
}
我认为这对你有很大帮助。
相关文章:
- 在<输入类型=“;文件“/>
- 如何将输入类型值或id从一个jsp传递到另一个jsp页面
- 可以't将几个数字设置为<输入类型=“;数字“>
- 在输入类型日期中设置日期
- 如何将键入的文本从一个输入类型的文本复制到另一个
- 输入类型按钮返回历史记录并返回顶部
- 从HTML表单发布blob的表单输入类型是什么
- 输入类型文件的未捕获类型错误
- 如何在jQuery Mobile中设置100%宽度的输入类型日期
- 输入类型=文件验证停止其他输入类型验证
- 如何显示在输入类型文件中选择的文件
- jQuery Modal Popup-回发后输入类型设置为null
- 在控制器中将输入类型时间更改为秒
- 更改具有相同id的输入类型的所有值
- 对于每个输入类型,使用javascript获取值
- 输入类型范围在angularjs重复内不起作用
- 我如何使HTML5<输入类型=月份>以在所有浏览器上工作
- 如何调用两个函数是一种html输入类型
- 如何使按钮作为输入类型文件
- 可以设置输入类型=文件的文本框的高度