我想要获取包含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