2012-05-25 27 views
0

我试图设置一个确认框来删除在php页面上使用javascript/jquery的消息。 javascript函数中正确设置了变量,但现在我无法将函数正确发布到页面。将php变量发布到使用javascript的页面

我有以下列入头

<script src="http://code.jquery.com/jquery-latest.js"></script> 

现在的代码。你可以看到,我试图将变量发布到messages.php,但是当我检查是否有人发布时,什么都不会发生。

+0

供参考:'mysql_real_escape_string'用于输入,没有任何一点在输出上调用它,你需要在messages.php中再次调用它,然后再插入。 – Louis

+0

至于你的问题,你的代码看起来不错,你可以检查你的messages.php页面,问题可能在那里。 – Louis

+0

我应该寻找什么?我撞到我的if语句来检查POSTED值到最高。它之前的唯一一件事是一对包含几页和一个会话变量的声明。 – user1406951

回答

1

看着眼前的JavaScript,deleteMessage()可以写成如下,以避免混乱的字符串处理,并给你更好的反馈,同时调试:

function deleteMessage(msgID, userid) { 
    if (!confirm("Are you sure?")) { return false; } 
    var data = { 
     'action': 'delete', 
     'msgID': msgID, 
     'user': userid 
    }; 
    $.ajax({ 
     url:'messages.php', 
     data: data, 
     type: 'POST', 
     success: function(response) { 
      alert(response);//debug message 
      //window.location.reload() 
     }, 
     error: function((jqXHR, textStatus, errorThrown) { 
      alert((typeof errorThrown == 'string') ? errorThrown : textStatus);//debug message 
     } 
    }); 
} 

你可以选择当一切都调试切换回$.post()

你会看到'action': 'delete'是硬编码的。这是一个小问题,但没有必要将'删除'传递给deleteMessage,因为这样命名的函数不会执行其他任何操作。在构建HTML时,需要进行相应的更改。

相关问题