尝试在对话框jquery中使用ajax删除字段时返回错误

时间:2014-05-23 08:30:47

标签: php jquery ajax jquery-ui-dialog

我有调查列表,每个调查按钮都有编辑按钮,点击后,按钮对话框会弹出他们的数据库答案,那些答案都有删除按钮,但我不能让他们工作。这是我的代码。 的 JQUERY:

 $( "#dialog1" ).dialog({ 
    autoOpen: false,
    width:'auto',

   open: function(event, ui){
       $('<button>', {
            'class': 'button'
        })
        .appendTo($(".wrapper"))
        .click(function(){

            var prom=$(this).closest('div').attr('id') ;
            alert(prom);
          $.ajax({
                url: 'admin/deleteField',
                type: 'post',
                data: { idanswer: prom} ,
                success: function () {
                alert("success");

                },
                error: function () {
                    alert("error");

                }
            });
        });
});

PHP

    public function deleteField()
{

    $IdAnswer=(int)$_POST['idanswer']; 

    Answer::DeleteAnswer($IdAnswer);

}

HTML

    <?php
    $answers=$survey->AllAnswers;
    foreach($answers as $answ)
    {
?>
<div class="wrapper" id="<?php echo $answ['Id']; ?>" style="width:auto;">
<input id='answers' name='answers[]' type='text' value='<?php echo $answ['Answer']; ?>'>    
<?php } ?>

当我点击某个答案的删除按钮时,警告(“错误”)显示一秒钟,然后对话框关闭,没有任何反应。

1 个答案:

答案 0 :(得分:0)

好的,所以我只是添加了return false;在ajax调用结束时,它正在工作!

 $( "#dialog1" ).dialog({ 
autoOpen: false,
width:'auto',

open: function(event, ui){
   $('<button>', {
        'class': 'button'
    })
    .appendTo($(".wrapper"))
    .click(function(){

        var prom=$(this).closest('div').attr('id') ;
        alert(prom);
      $.ajax({
            url: 'admin/deleteField',
            type: 'post',
            data: { idanswer: prom} ,
            success: function () {
            alert("success");

            },
            error: function () {
                alert("error");

            }
        });
return false;
    });
});