javascript - .post()返回ID不受页面Jquery影响

标签 javascript php jquery ajax

这个问题与我在这里提出的问题直接相关: stop click() from happening on a ajax created input

我通过简单地添加 if (e.target === this) 就找到了这个问题的答案,但现在当我选中该框时,我返回的响应不会执行任何操作。

我的 .post 返回的新代码是:

$output .= "<table><tr><td>";
$output .= "<input id=\"toedit\" type=\"text\" placeholder=\"$item_to_edit\" size=20>";
$output .= "</td><td>";
$output .= "<input id=\"test_editing_check\" type=\"checkbox\" name=\"test_editing_check\" value=\"test_editing_check\" \>";
$output .= "</td></tr></table>";

但是我的 Jquery 在原始页面上:

$("#testing_editing").click(function(e){
    if (e.target === this) {
        var testhtml = $(this).html();
        var meatseafood = '<?php echo $meatseafood; ?>';
        $.post('edit_order.php', {'itemtoedit':testhtml,'meatseafood':meatseafood}, function(data) { //make ajax call to check_username.php
        $("#testing_editing").html(data); //dump the data received from PHP page
        });
    }
    });
    $("#test_editing_check").click(function(){
        if ( this.checked ) {
            var testvalue = "HI";
            alert(testvalue);
        }
    });

似乎不适用于 .post() 调用返回的复选框。

我需要做些什么才能使 .post() 返回被主页的 jquery 代码识别吗? 我希望我的语法没有问题,但我在另一个页面上使用了这个精确的(非常基本的)代码(但没有使用 .post() 调用)并且它工作正常。

基本上,当您单击我的主页写入的 div 时,它会调用 .post() 并返回一个可编辑的输入字段和一个复选框。当我单击该复选框时,我希望它进行另一个 .post() 调用并使用新输入的数据更新数据库。

但是,当我选中该复选框时,什么也没有发生。

原始/主页中的 jquery 似乎无法识别我的 ajax 返回的代码。 在我的测试代码中,我想做的就是当我单击复选框时弹出一个警报框,以显示它已“读取”输入框,现在可以通过 .post() 调用发送该数据进行处理。

如果您需要任何其他代码,请告诉我。 它看起来很干,所以我不确定为什么它不起作用,这就是我在这里的原因:)

(我想做的想法是,用户提交一个表单,在下一页上,会显示一个“确认框”,上面写着“这是您想要通过表单提交的内容吗?”答案是否定的,他们可以“单击”数据并更改它,而无需重新加载页面。单击部分有效,但确认“是的,我想将我的数据更改为这个新输入的数据”的复选框不是'工作。)

感谢您的帮助。

德里克·康伦

最佳答案

尝试在加载复选框后分配事件,如下所示:

$("#testing_editing").click(function(e){
    if (e.target === this) {
        var testhtml = $(this).html();
        var meatseafood = '<?php echo $meatseafood; ?>';
        $.post('edit_order.php', {'itemtoedit':testhtml,'meatseafood':meatseafood}, function(data) { //make ajax call to check_username.php
           $("#testing_editing").html(data); //dump the data received from PHP page

           // This is applied after loading the data from the ajax call
           $("#test_editing_check").click(function(){
              if ( this.checked ) {
                 var testvalue = "HI";
                 alert(testvalue);
              }
            });
        });
    }
    });

关于javascript - .post()返回ID不受页面Jquery影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25924840/

相关文章:

javascript - JQuery 显示/隐藏 div 从下拉列表更改

javascript - Webglclear() 问题

php - 如何在 Zend Framework 中使用守护进程访问我的模型

php - 检查是否用simplexml_load_string加载了xml

php - 动态函数参数和使用 __call

javascript - jQuery 单选按钮更改

javascript - Jquery Scroller 需要在到达结束后停止滚动

javascript - 结果中带有 range.variable 的 Angular ng-attr- 表达式

javascript - IE7 文本大小调整

javascript - 如何使用 jQuery 在电子邮件验证上的按键上添加另一个语句