我正在处理一个页面,我需要刷新父窗口的某个div,这是我的用例
从该函数我调用ajax调用并想要使用ajax调用从服务器发送的内容替换div内容,这里是方法
function updateAllotmentQtySection(){
if($('#isProductAllotment').length > 0){
var allotmentEntryCode=$("#allotmentEntryCode").val();
var productcode=$("#productCodePost").val();
$.ajax({
type: "GET",
url: "/storefront/cart/getProductedAllotment/?productCode="+productcode+"&allotmentEntryCode="+allotmentEntryCode,
success: function(response) {
//alert(response);
$("#productAllotmentQtyDiv").html(response);
}
});
}
以下是我想要更新的Div部分
<div id="productAllotmentQtyDiv">
<c:choose>
<c:when test="${not empty productAllotment}">
<select name="qty" id="qty" class="productDetailsSelect">
<c:forEach items="${productAllotmentQty}" var="productAllotmentQty">
<option value="${productAllotmentQty}">${productAllotmentQty}</option>
</c:forEach>
</select>
<input type="hidden" name="allotmentEntryCode" id="allotmentEntryCode" value="${productAllotment.code}" />
<input type="hidden" name="isProductAllotment" id="isProductAllotment" value="true"/>
</c:when>
<c:otherwise>
<c:when test="${not empty editPersonalization}">
<input style="width: 46px;" type="text" size="1" id="qty"
name="qty" value="${quantity}" readonly="readonly" />
</c:when>
<c:otherwise>
<input style="width: 46px;" type="text" size="1" id="qty"
name="qty" value="${quantity}" />
</c:otherwise>
</c:otherwise>
</c:choose>
</div>
我从div内部的服务器发送相同的内容,甚至我能够在警告标签下看到正确的响应,但不确定哪里确实是错误的部分,因为div没有得到更新但只显示以前的值
答案 0 :(得分:0)
使用window.opener
从子级调用父级上下文中的函数:
window.opener.updateAllotmentQtySection();
(假设updateAllotmentQtySection()存在于父级的全局命名空间中)