Javascript 若页面上的任何文本框发生更改,请调用函数
我知道如何检查一个文本框是否已更改,但如果任何文本框已更改,该怎么办? 有什么想法吗 使用jQuery:Javascript 若页面上的任何文本框发生更改,请调用函数,javascript,Javascript,我知道如何检查一个文本框是否已更改,但如果任何文本框已更改,该怎么办? 有什么想法吗 使用jQuery: $("input[type=text]").change(function() { // put your code here }); 编辑: 如果您不熟悉或不了解它,那么它是一个JavaScript框架。单击以了解它的change()功能。您可以使用一些jQuery 为文本框指定一个类,例如class=“onchange”,然后添加一些jQuery $(function(){
$("input[type=text]").change(function() {
// put your code here
});
编辑:
如果您不熟悉或不了解它,那么它是一个JavaScript框架。单击以了解它的
change()
功能。您可以使用一些jQuery
为文本框指定一个类,例如class=“onchange”
,然后添加一些jQuery
$(function(){
$('.onchange').change(function(){
// your code in here.
});
});
这样,任何带有类
onchange
的文本框都会引发jQuerychange
事件。下面的代码会将onchange事件监听器附加到页面上所有类型为“text”的输入标记上
var textboxs=document.getElementsByTagName(“输入”);
对于(变量i=0;i
循环文档。getElemenetsByTagName(“输入”)
。对于每个元素,验证type==“text”,如果是,则附加一个事件侦听器
JQuery在一行中执行此操作:$(“input[type=text]”)。on(“change”,function(){…})
如果要对加载时间后动态创建的文本框执行此操作,请使用
$(“输入[type=text]”)。live(“更改”,function(){…})
通常,所有文本框都在一个分区中。使用:
这样,您只添加一个事件,它将检查div中的每个onchange
事件。只需一个简单的检查,您就完成了
这比为每个输入
元素添加事件处理程序更有效
PS:jQuery的方式如下:
$('#div-with-your-checkboxes').change(function(e) {
if ($(e.target).tagName === 'INPUT') {
// Your code in here.
}
})
正如您所看到的,jQuery对于这个简单的任务来说并不是真正需要的:-)。您尝试过什么吗?尝试过使用jQuery吗?@Brian其中的事件功能在哪里?它将在foreach循环中。“尝试使用jquery”中的功能在哪里?.change()是否也可以识别您是否通过右键单击插入文本?@evip我相信可以。我刚刚在这里测试了它,它成功了:因为OP没有提到jQuery或用jQuery标记,所以您至少应该提供一个到jQuery站点的链接,并希望提供一个非jQuery的答案。@Raynos不是真的。jQuery是JavaScript。OP没有发布任何他们尝试过的代码,只是在寻找想法。这是一个。谢谢你的否决票。只是为了举例,普通!但是为了您的缘故,我编辑了:)我建议使用
onchange
而不是onclick
,因为onclick
会在做出任何更改之前发出警报,并且不会检查单击事件后是否进行了更改。sry,我的错误;我不小心写了一篇关于jquery的文章。。;就我个人而言,这会让javascriptIn-in-in-line文本框[i]失去所有乐趣。。。。不应该有“类型”。换句话说,它应该是文本框[i].onchange=。。。
// Add an event handler on your whole div
document.getElementById('div-with-your-checkboxes').onchange = function(e) {
// Cross browser check
var evt = e || window.event
// Get the element that triggered the event
var target = evt.target || evt.srcElement
// Check if it is an INPUT element
if (target.tagName === 'INPUT') {
// Your code in here.
}
}
$('#div-with-your-checkboxes').change(function(e) {
if ($(e.target).tagName === 'INPUT') {
// Your code in here.
}
})