Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.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 jQuery onChange()不起作用…;_Javascript_Jquery - Fatal编程技术网

Javascript jQuery onChange()不起作用…;

Javascript jQuery onChange()不起作用…;,javascript,jquery,Javascript,Jquery,所以我试着做了一个简单的改变小提琴。我不能让它工作。不管我做什么。为什么? HTML代码 <div id="status" style="display:none">0</div> <button class="start">GO</button> 0 去 Javascript代码 var cntTo = 2; var cnt = 0; $('#status').change( function() { console.log('stat

所以我试着做了一个简单的改变小提琴。我不能让它工作。不管我做什么。为什么?

HTML代码

<div id="status" style="display:none">0</div>
<button class="start">GO</button>
0
去
Javascript代码

var cntTo = 2;
var cnt = 0;

$('#status').change( function() {
  console.log('status changed');
  if ($(this).text() == '1'){
    if(cnt <= cntTo){
      getNext(cnt);
    }
  }
});



$('.start').click(function(){
  console.log('start clicked');
  console.log('text of status now: ' + $('#status').text());
  if($('#status').text() != '1'){
    console.log('setting text');
    $('#status').text('1');
    console.log('text of status now: ' +$('#status').text());
  }
});

function getNext(cnt){
  $('#status').text('0');
  console.log('getting details');
}
var-cntTo=2;
var-cnt=0;
$('#status')。更改(函数(){
console.log('status changed');
如果($(this).text()=='1'){
如果(cnt,则.change()函数仅限于输入、文本区域和选择。

来源:

您可以使用GO按钮点击事件直接嵌入
onchange
功能代码,如下所示:

$('.start').click(function(){
    if($('#status').text() != '1'){
        $('#status').text('1');
    }
else
{
  if(cnt <= cntTo){
    getNext(cnt);
  }
}
});
$('.start')。单击(函数(){
如果($(“#状态”).text()!=“1”){
$('#status')。文本('1');
}
其他的
{

如果(cnt使用
domsubtreemedited
事件

domsubtreemedited
这是通知文档所有更改的常规事件。它可以代替更具体的突变和突变名称事件

工作

另一个简单的解决方案

当脚本中的
#text
更改中的文本触发触发器时,您可以将其绑定到更改事件

var-cntTo=2;
var-cnt=0;
$('#status').bind('change',function(){
console.log('fired');
如果($(this).text()=='1'){
如果(cnt使用此

$('#status').bind("DOMSubtreeModified",function(){

var-cntTo=2;
var-cnt=0;
$(文档).ready(函数(){
$('.start')。单击(函数(){
如果($(“#状态”).text()!=“1”){
$('#status')。文本('1');
}
});
$('#status').bind(“domsubtredemodified”,function(){
console.log('fired');
如果($(this).text()=='1'){

如果(cnt
$(“开始”)。单击就绪函数中的
函数放入

您使用的是不监视或响应div内容的
更改
事件。使用
domsubtreemedited
事件并触发对该事件的操作

var-cntTo=2;
var-cnt=0;
$('#status')。在(“domsubtreemedited”,function()上{
如果($(this).text()=='1'){

if(cnt如果要在
div
元素中修改内容时执行某些操作,则必须使用名为
domsubtreemeding
的事件,如下所示

 $("body").on('DOMSubtreeModified', "#status", function() {

参考资料:

有关更多信息,请阅读已经讨论过的关于堆栈溢出的线程


on change事件对
不起作用,但我也尝试过。$(文档)。在('change','divid',函数(){//上,这也不起作用。})使用
并将
.text()
更改为
.val()
.Himanshu。我可以这样做,但我不能这样做。因为我将使用ajax进行调用。然后ajax成功函数将隐藏字段再次更新为1。如果您注意到getNext函数将其更新为0。这样,当ajax返回其值时,它将触发下一条记录,我可以直观地看到正在处理的每条记录.ok@GrafixMastaMD,你可以像其他人建议的那样使用
domsubtreemedited
。谢谢。这是我最接近的。这有点棘手。但我认为使用一些if语句我肯定可以实现我的目标。非常感谢。欢迎:)我添加了另一个简单的解决方案,类似于您所做的检查,一旦更新了我的答案,谢谢您的帮助。我将您的答案标记为与其他人的答案相同。我没有首先看到它。但我已更改了选择。@GrafixMastaMD我很高兴能够提供帮助。
 $("body").on('DOMSubtreeModified', "#status", function() {