按键事件上的简单HTML输入不起作用
Simple HTML input onkeypress event not working
我是这里的新手(以及一般的web开发),我一直在努力理解为什么我的函数没有在指定的事件上执行。
我找到了这个帖子,它似乎正是我想要的,但即使这样也不起作用:
html<输入类型=";文本"/>onchange事件不起作用
如有任何帮助,我们将不胜感激。我的确切代码如下。我有一些文本输入字段(实际上是搜索框),最终我想让它在用户向文本字段中输入数据时选中一个复选框,但它似乎甚至没有调用该函数。
在阅读上面提到的帖子时,我尝试了一些变体。以下是我尝试过的一些输入字段属性:
<input type="date" name="dt" size="10" value="2012-07-21" onChange="SetCheckBox('d')" />
<input type="search" size="10" name="sl" value="" onChange="SetCheckBox('n')" />
<input type="search" size="10" name="sf" value="" onkeypress="SetCheckBox('n')" />
<input type="search" size="20" name="st" value="" onkeypress="SetCheckBox(this);" />
这是我的javascript:
<script language="javascript" type="text/javascript">
Function SetCheckBox(id) {
alert (id.value);
document.write('test');
}
</script>
我试过不传递任何参数,只做一个document.write,但它似乎没有调用函数。是的,javascript已经启用,在页面的其他地方工作也很好!脚本在正文中,就在表单下方。
在多个浏览器中,(缺少)行为是相同的。感谢您提供的任何帮助。射线
对于javascript,function
关键字是小写的。
Function SetCheckBox(id)
需要:
function SetCheckBox(id)
此外,您并不是通过传递对象来获取id,所以…
function SetCheckBox(id) {
var ele = document.getElemenyById(id);
alert (ele.value);
document.write('test');
}
除了函数中已经提到的大写字母F之外的几个问题
- 函数传递一个名为id的变量,但需要一个字段
- 您传递的字符串不是ID并且没有引用字段
- 只有使用(this)的上一个版本才能工作,但没有值得提醒的值
- document.write将在页面加载后调用页面及其上的所有脚本(例如,不内联)
所以代码应该是
function SetCheckBox(id) {
var val = document.getElementById(id).value
alert (val);
document.getElementById('someContainer').innerHTML=val;
}
或
function SetCheckBox(fld) {
var val = fld.value
alert (val);
document.getElementById('someContainer').innerHTML=val;
}
根据你的描述,我猜你想这样做:演示
<input type="date" id="dt" name="dt" size="10" value="2012-07-21"
onkeypress="SetCheckBox(this)" />
<input type="checkbox" id="dtChk" />
使用此脚本
function SetCheckBox(fld) {
var checkbox = document.getElementById(fld.id+"Chk");
// check if something is entered, uncheck if not
checkbox.checked=fld.value.length>0;
}
甚至可能添加
window.onload=function() {
document.getElementById("dt").onkeypress();
}
如果字段在(重新)加载时不为空,则
在javascript函数中,关键字是用小写字母写的,这里用大写字母写F。
onkeypress和onchange事件应能在中工作
<body>
<script type="text/javascript">
function SetCheckBox() {
alert("1");
}
</script>
<input id = "test" value="" onkeypress="SetCheckBox();" />
<input id = "test1" value="" onchange="SetCheckBox()" />
</body>
相关文章:
- 如何编写HTML输入的JS内联
- 如何在HTML输入字段中添加不可删除的后缀
- HTML输入中不可更改的前导字符
- 如何使用jQueryAjax使用动态html输入texbox提交表单
- 清理HTML输入值
- 如何使用jQuery动态创建HTML输入
- 通过javascript以编程方式将文件插入HTML输入
- jQuery选择器不识别任何动态创建的HTML输入函数
- 将JavaScript变量传递到HTML输入框和(在PHP文件中使用)
- 如何调用两个函数是一种html输入类型
- HTML输入框未触发事件
- 移动HTML输入文本框在提交时隐藏软键盘
- 按键事件上的简单HTML输入不起作用
- 选择同一文件时未触发HTML输入文件选择事件
- 如何使文本、数字和日期html输入字段以一致的方式支持Ctrl+Z(撤消)
- 更改 html 输入字段中的占位符属性
- 如何在不使用任何 html 输入/搜索元素的情况下读取本地客户端文本文件
- 持久性 HTML 输入占位符
- 将 html 输入转换为正确的编码
- 如何隐藏和显示 html 输入文本和段落