我是jquery ajax的新手,我正在试图弄清楚如何渲染响应数据,我从php回来更新指定的div作为json。所以实际上我遇到了以下问题。
JavaScript:
<script type="text/javascript">
$(document).ready(function() {
$(".ajax_call").change(function() {
var domain = document.domain;
var count = $('.ajax_call :selected').val();
var $parent = $(this).closest(".product_box");
var modul_title = $("h4", $parent).text();
$.ajax({
url:'index/ajax',
data:{mod_title:modul_title, domain:domain, count:count},
cache:'false',
datatype:'json',
success: function(response) {
if (response.status = modul_title) {
$parent.fadeOut();
$parents.(response).fadeIn();
} else {
alert("Oops, script is a no go");
}
}
});
});
});
HTML:
<div class="product_box">
<h4><!-- php code generating --> header</h1>
<div class="product">
<div class="thumbnail-item">
<a href=""></a>
<!-- and couple of other divs what are rendering my output in my mvc view -->
<div class="ajax_bar">
<!-- and here comes the dropdown what is triggering an ajax call -->
<select class="ajax_call" size="1" name="blala">
<option value='50'>add more 50</option>
<option value='100'>add more 100</option>
<option value='150'>add more 150</option>
</select>
</div>
</div>
</div>
</div>
我想要的是用ajax调用更新显示项目的数量。我不清楚如何呈现响应。我是否必须再次形成原始数据?我的意思是我的html-php代码看起来或者可以用其他方式完成?
答案 0 :(得分:1)
假设您要生成用户定义的html,那么可以使用microtemplating MicroTemplating
希望这就是你想要的。
答案 1 :(得分:0)
$parents.(response).fadeIn();
应该是
$parents.html(response).fadeIn();
或
$parents.text(response).fadeIn();
.html()更新$ parents的内容
阅读.text()
答案 2 :(得分:0)
您需要使用html或text方法才能显示
$parents.html(response).fadeIn();
or
$parents.text(response).fadeIn();
而不是$parents.(response).fadeIn();