我想要獲取包含POST表單的頁面,以便在用戶能夠確認操作(如刪除列表)時加載到iframe中。我已經成功地將JS和表單頁面加載到iframe中,但是當我單擊表單內的一個操作時,它不會更新列表。相反,它只是刷新頁面。通過iframe的外部POST表單
表單工作正常,因爲如果我嘗試在瀏覽器中手動訪問content-url
並更新表單,它工作正常。
如何獲取iframe內容而不是父頁面並在iframe中加載響應本身?我究竟做錯了什麼?
任何幫助表示讚賞!
這裏是我的代碼:
HTML:
<button class="myclass" content-url="<?php bloginfo('siteurl') ?>/?a_action=delete_auction&pid=<?php the_ID(); ?>">Delete Me</button>
<div class="popup"><iframe id="mynewiframeid" name="myframename" src=""></iframe></div>
JS:
$(document).ready(function() {
$(document).click(function(e) {
if ($(".popup").is(":visible")) {
$(".popup").fadeOut("fast")
}
});
$(".myclass").click(function() {
if (!$(".popup").is(":visible")) {
$('#mynewiframeid').attr('src',$(this).attr('content-url'));
$(".popup").fadeIn("slow");
}
return false;
});
$(".popup").click(function(e) {
e.stopPropagation()
})
});
形式:
<div class="popup_content">
<h3> You are about to delete <b><?php echo $title; ?></b>!</h3>
<?php
if(isset($_POST['yes_confirm']))
{
$s = "update ".$wpdb->prefix."posts set post_status='trash' where id='$pid'";
$wpdb->query($s);
echo '<div class="deleted_item_ok">';
printf(__('Your item has been deleted successfully!'));
echo '</div>';
}
else
{
?>
<form method="post">
<div class="are_you_sure_delete">
<?php
_e('Are you sure you want to delete this item?');
?>
</div>
<button class="button-small button-w-green" type="submit" id="submits" name="yes_confirm">Yes, Delete</button>
<button class="button-small button-w-red" type="submit" id="submits" name="no_confirm">No!</button>
</form>
<?php } ?>
</div>
謝謝!這是完全合理的。 現在,我需要弄清楚爲什麼src沒有使用上面的腳本進行設置。可能與在該頁面上的每個項目旁邊具有與class =「myclass」相同的按鈕有關,並且iframe不知道要設置哪個src URL。 也許需要在某處添加getelementbyid? – Duetschpire 2014-10-29 06:09:45
我不認爲擁有與class =「myclass」相同的按鈕將會成爲問題。由於點擊功能使用$(this)來獲取content-url,它總是獲取您單擊的按鈕的內容url ... – 2014-10-29 06:30:15
用我目前擁有的內容更新了代碼 – Duetschpire 2014-10-29 06:35:28