1
我想爲我的帖子編輯一個函數。到目前爲止,您可以從由mySQL運行的管理頁面發佈並查看您的帖子,但不久前我想編輯一個按鈕。 理論是,當你點擊編輯按鈕時,javascript獲得post元素的id,然後在運行一個mysql查詢,其中id = PostID後,它將重定向到一個頁面,在那裏你可以編輯帖子。 html輸入值將是從mysql讀取的數據,但JavaScript不想啓動。點擊函數調用JavaScript然後重定向到PHP頁面
帖子的PHP/HTML看起來像這樣:
while($row = mysqli_fetch_array($run)) {
echo '<article id="post" data-postid="'.$row["id"].'">
<ul>
<li class="id">'.$row["id"].'</li>
<li class="title">'.$row["title"].'</li>
<li class="postedBy">'.$row["postedBy"].'</li>
<li class="postedBy">'.$row["dDate"].'</li>
<li class="prio">'.$row["priority"].'</li>
<li class="icons"><div class="do" data-action="edit"><i class="fa fa-pencil-square-o"></i></div><div class="do" data-action="delete"><i class="fa fa-times"></i></div></li>
</ul>
</article>';
的Javascript看起來是這樣的(它被稱爲admin_edit.js):
$('#post').on('click', '.do', function(){
var self = $(this); // cache $this
var action = self.data('action'); // grab action data edit/delete
var postid = parent.data('postid'); // grab post id from data-postid
// edit action
if (action == 'edit') {
// send js to php
$.post("../admin/post_edit.php", { postId: postid });
}
// delete action
else if (action == 'delete'){
// send ajax request
// Something.
};
});
理解我的文件夾結構: 我們在root/admin文件夾和root/admin/admin.php頁面上。 javascript位於root/js文件夾中,名爲root/js/admin_edit.js。
爲什麼js不想啓動?
在此先感謝!
當它的事件被定義時#post是否存在? – 2014-09-22 14:28:40
它是由ajax請求生成的! (Magyar vagyok) – Zh4rsiest 2014-09-22 14:29:39
這就是問題所在!我將#post更改爲#main,現在它重定向,但沒有任何$ _POST ['something']參數。 – Zh4rsiest 2014-09-22 14:31:06