【问题标题】:How can one trigger a function onchange of a div?如何触发一个函数 onchange 一个 div?
【发布时间】:2012-10-31 08:37:29
【问题描述】:

这是一个在网上很难找到答案的问题。

假设用户运行一个 ajax 函数 onclick 来填充 div 的内容。

但是,如果 ajax 输出是 php,并且对于那个 onclick,我希望页面上的其他 div 以依赖于 div1 内容的方式进行更改?

这意味着我需要等待 div1 真正改变,这样我才能使用 php 计算的 ajax 输出来相应地调整 div2。

经过一些测试,我发现我无法在第一个 ajax 函数的末尾添加对第二个 ajax 函数的调用,因为它似乎在第一个 ajax 调用的 div 内容实际更改之前运行。

那么如何触发 ajax 调用 onchange 的内容?

【问题讨论】:

  • 问了一个类似的问题here

标签: javascript ajax


【解决方案1】:

所有 ajax 调用都会在调用完成时执行回调,把你的逻辑放在那里。

【讨论】:

  • 我认为这正是我想要的。谢谢,我去研究一下。我应该遵循任何特定的格式吗?
  • @user1787489 - 如果您使用 jQuery,下面的答案有您想要的示例。对于其他任何事情,我会检查相关文档
【解决方案2】:

你可以使用 Jquery

$('#div1').change(function(){
    doAjax( $(this).html() );
});

或者在ajax的回调中

$.ajax({
    url: 'http://yoururl.com',
    type: 'post',
    data: { key: value },
    success: function( data ){
        doAjax( data );
    }
});

【讨论】:

    【解决方案3】:

    如果您了解 jquery,您应该尝试以下方法:

            $.ajax({
                    traditional: true,
                    type: "post",
                    url: '<your_url>',
                    beforeSend: function () {
                          //your logic to perform operation before ajax request
                    },
                    data: {
                        //data to send
                    },
                    success: function(response) {
                       //your logic to perform operation after ajax request
                       //here make another ajax request
                    }
                });
    

    【讨论】:

      猜你喜欢
      • 2022-08-04
      • 1970-01-01
      • 2012-06-28
      • 1970-01-01
      • 2014-12-29
      • 1970-01-01
      • 2011-10-26
      • 2021-02-15
      • 1970-01-01
      相关资源
      最近更新 更多