我有一个功能,可以将产品添加到购物篮,然后在页面主要内容区域的顶部显示成功消息。我已经在onsuccess函数上运行了ajax调用。但是,我不能在具有id breadcrumbBar的div之前在页面上插入成功消息。这是我的onSuccess函数:
onSuccess: function(transport) {
if(transport.responseText == "oos") {
alert("We're sorry, this product is out of stock. If the product has different options, why not try a diffrent combination?");
}
else
{
container.update(button);
successMessage = document.createElement('div');
successMessage.id = "basketAddSuccess";
successMessage.insert('<p>Test</p>');
alert($('breadcrumbBar'));
document.body.insertBefore(successMessage, $('breadcrumbBar'));
}
}
这是为我的内容开头生成html的php:
<div id="content" style="overflow: visible;">
<section role="main">
<div class="breadcrumbs floatLeft" id="breadcrumbBar">
<p class="floatLeft"><a href="/products/category/<?php echo $product->parent_cat_url."/".$product->cat_url."/1"; ?>" target="_self"><?php echo $product->cat_name; ?></a> > <span class="green" style="font-weight: bold;"><?php echo $product->prod_title; ?></span></p>
<?php genSaleIcon($product->sale); ?>
</div>
有什么想法吗?
答案 0 :(得分:2)
insertBefore
必须在父节点上执行,在“main”部分的情况下。
$('breadcrumbBar').parentNode.insertBefore(successMessage, $('breadcrumbBar'))