Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.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/9/solr/3.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 onChange不';t fire用于动态内容_Javascript_Dynamic_Onchange - Fatal编程技术网

Javascript onChange不';t fire用于动态内容

Javascript onChange不';t fire用于动态内容,javascript,dynamic,onchange,Javascript,Dynamic,Onchange,我有3个输入文本,我想在前2个文本之间做一些操作,并在3个文本中打印结果。第一个输入文本的内容由查询生成,从数据库获取数据,因此动态生成内容。所以我的例子是:(第一个输入文本-3)减去(第二个输入文本0)=(结果输入文本0) 这是我用来做这件事的代码的一部分: $(document).on('change input load', '#act_hrs_1e', function() { var_hrs('act_hrs_1e','plan_hrs_1e','var_hrs_1e'); });

我有3个输入文本,我想在前2个文本之间做一些操作,并在3个文本中打印结果。第一个输入文本的内容由查询生成,从数据库获取数据,因此动态生成内容。所以我的例子是:(第一个输入文本-3)减去(第二个输入文本0)=(结果输入文本0)
这是我用来做这件事的代码的一部分:

$(document).on('change input load', '#act_hrs_1e', function() { var_hrs('act_hrs_1e','plan_hrs_1e','var_hrs_1e'); });

我的问题是,对于动态生成的内容,任何更改、输入或加载都不起作用(在我的示例中是3),我想要的是,当我加载页面时,它执行操作,而不需要输入任何东西来启动函数。

看起来您正在将事件范围缩小到ID为act\hrs\1e的对象,您应该只有一个具有该ID的元素。请尝试作用域到css类或删除作用域以响应所有元素的事件。

您必须将加载事件与该代码分开,您正在将
加载
事件从
文档
对象委托给id为
#act\u hrs\u 1e
的元素,这应该可以:

$(document).on('change input load', '#act_hrs_1e', function() { var_hrs('act_hrs_1e','plan_hrs_1e','var_hrs_1e'); });
function callHrs() {
    var_hrs('act_hrs_1e','plan_hrs_1e','var_hrs_1e'); 
}

$(document).on('ready', callHrs).on('change input', '#act_hrs_1e', callHrs);

var_hrs已经是一个函数,是我用来计算第一个输入文本(id-act_hrs_1e)和第二个输入文本(plan_hrs_1e)之间的差异的函数,在我将其写入第三个输入文本(id var_hrs_1e)之后,我的答案的第一部分只相关。将加载事件与其他两个事件分开。我将更改函数名以避免混淆。它不起作用。。这就是我所做的:$(文档)。on('load',var_hrs)。on('change input','act#u hrs_1e',var_hrs('act#u hrs_1e','plan_hrs_1e','var_hrs_1e');我只有一个元素具有该ID,在该部分我调用该ID,因为它们是我的var函数的参数(前两个之间的差异,并将结果写入第三个)