好的,我有3个文件。
- index.php
- verTicket.php(表示getTicket.php)
- VerTickets.php
在index.php上,我有一个标题,一个滑动条和一个div保存内容。
<div id="bigBody"></div>
在相同的index.php,我有一个链接到verTickets.php。<li><a href="#" onClick="$('#bigBody').load('verTickets.php')" id="getAllTickets">All Tickets</a></li>
点击此链接,将verTickets.php加载到bigBody id中。然后,我用SQL内容填充一个表,包括一个可点击的链接:ECHO "<td><a class='ticketLink' id='" . $row['id'] . "'>". $row['title'] . "</a></td>";
$(document).ready(
function() {
$(".ticketLink").click(function() {
window.alert(this.id); //Test to see if id is being passed.
$.post("verTicket.php", {
operation: "createTicket",
ticketId: "Test id"
});
});
}
);
我已经测试了$.post
在MySQL服务器上插入数据,它工作了。但是我想在不刷新的情况下POST并将页面加载到我的bigBodydiv中。
@EDIT -解决方案!谢谢,@timgavin
在我的verTicket.php是一个表使用MySQL_Fetch。不知道我是否理解了你的答案,蒂姆。所以,我试图在我的verTicket.php中创建一个变量,并将sql查询生成的所有内容放在里面,这样我就可以返回并使用html.
但是,在这样做的过程中,我遇到了这个问题:$("#bigBody").load("verTicket.php", {ticketId: (this.id), title: (this.innerHTML)});
使用这段代码,我可以将我的帖子变量传递到verTicket.php中,并在处理后加载整个页面。
谢谢!:)'
简短的回答:如果在verTicket.php中查询失败,返回一个'fail'消息,或者,如果成功,返回你想要加载的数据
verTicket.php
if(database query is successful) {
return/echo the data here
} else {
die('fail');
}
然后,在.post
javascript函数中,检查返回的数据是否为'fail',如果不是,则将返回的数据加载到div中,否则打印错误消息。
$.post('verTicket.php',{operation: "createTicket",ticketId: "Test id"}, function(response) {
if(response != 'fail') {
$('#bigBody').html(response);
} else {
// error code goes here
}
});