Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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_Html - Fatal编程技术网

检测来自javascript的更改

检测来自javascript的更改,javascript,html,Javascript,Html,我有一个文本输入,它的内容通过javascript更改。然而,onchange事件似乎并没有捕捉到这种变化。有没有一种方法可以通过Javascript检测输入何时被更改?如果您想在键入时跟踪更改,请使用onkeydown。如果需要使用鼠标捕捉粘贴操作,请使用onpaste(即FF3)和oninput(FF、Opera、Chrome、Safari1) 如果您使用的是HTML5,则可以使用输入事件 document.getElementById("textinput").addEventListen

我有一个文本输入,它的内容通过javascript更改。然而,onchange事件似乎并没有捕捉到这种变化。有没有一种方法可以通过Javascript检测输入何时被更改?

如果您想在键入时跟踪更改,请使用
onkeydown
。如果需要使用鼠标捕捉粘贴操作,请使用
onpaste
(即FF3)和
oninput
(FF、Opera、Chrome、Safari1)

如果您使用的是HTML5,则可以使用
输入
事件

document.getElementById("textinput").addEventListener("input", function(e){});

使用JQuery以便您可以

$('element').on('input', function () {
   alert(this.value);
});
否则,单独使用JavaScript使用
onkeyup=“alert(this.value);”

如果是针对日期选择器,那么您可能可以使用它的
onSelect
事件

此答案为您在注释中指定的插件添加一个事件

==============================================报价开始================================

function myCallBack(start, end) {
    $('#dateRange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    alert('hello world'); //etc, your code here
}
// attach daterangepicker plugin
$('#dateRange').daterangepicker(options, myCallback);
您甚至可以定义自己的自定义事件处理程序,并在回调中触发它

范例

$(document).on('myCustomEvent', function () {
    // your code here
});

$('#dateRange').daterangepicker({
// .. //
function(start, end) {
    $('#dateRange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    $(document).trigger('myCustomEvent');
});

==================================================================================

更改输入值后,可以对输入调用
onchange()
,以触发onchange事件

function myCallBack(start, end) {
    $('#dateRange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    alert('hello world'); //etc, your code here
}
// attach daterangepicker plugin
$('#dateRange').daterangepicker(options, myCallback);
document.getElementById('myInput').onchange();

在评论中转发到我们的对话。

这里是你的DateRangePicker插件的链接

有一段解释了在回调时使用

引自链接 构造函数还接受可选的选项对象和回调 功能。只要选择了日期范围,就会调用该函数 已由用户更改,并已传递开始和结束日期 (力矩日期对象)作为参数


实际上,您可以捕获正在发生的更改

试试这个:

var something = ""; // create variable..
$('input').keyup(function () { // on a key up..
   something = $(this).val(); // update the variable..
} 
否则,您可以简单地使用
.replace(value.),
删除前面的单词,只需在变量中写入新写的单词


要检测更改,需要保存初始状态,然后将其与最终状态匹配。要保存初始状态,需要在页面加载时创建一个变量。时间过后,您可以比较这两个词并删除开头的单词,然后继续。

要回答问题。。。使用javascript(因为jquery等不是javascript,而是用javascript编程的)


其中Object是您要侦听的对象,它可以是文档,也可以是元素,具体取决于您要检测的内容。

请添加更改输入的代码。它是不支持回调的dateRangePicker。请指定,插件通常可以支持此类内容。有一段指定回调。它名为“预定义范围和回调示例”。内容由不支持回调的dateRangePicker更改。我试过输入和粘贴,但它们似乎不起作用。
Object.addEventListener("change",yourFunc );