您好我正在尝试显示标签并尝试获取标签的数据,我的下面的代码我设法显示标签但我的控制器中没有调用我的GetManufacturerProductsForCountry操作。如果我的代码有问题,请纠正我。
“%&gt;<%@ Import Namespace="EmsAdmin.Models" %>
<% foreach (var country in ((Country[])ViewData["countries"]))
{ %>
<li><a href="#">
<%: country.Name %></a> </li>
<% } %>
</ul>
<div class="panes">
<% foreach (var country in ((Country[])ViewData["countries"]))
{ %>
<div class="pane">
<div style="clear: both;">
</div>
</div>
<div id="ProductCountry<%:country.Id %>">
<script type="text/javascript">
var taskInput = "";
$.ajax({
url: "/Manufacturers/GetManufacturerProductsForCountry/"+<%:Model.Id %>+<%:country.Id %>,
type: 'get',
success: function (data) {
taskInput = data;
$("#ProductCountry").html(data);
}
});
</script>
</div>
<% } %>
</div>
答案 0 :(得分:0)
我建议在页面上调用ajax - 加载它们为每个插入html。太多的ajax调用可能不起作用,我相信那里存在限制。
如果这确实有效,那么您在“&gt;中的ID 与$(“#ProductCountry”)不匹配.html(数据);
另外,为了安全起见,你不能在MVC中默认执行ajax GET,而是用[HttpPost]修饰你的Controller方法,并在ajax调用中指定它。
答案 1 :(得分:0)
看起来jQuery对象中的id是错误的。
尝试
$("[id*=" + "ProductCountry" + "]").html(data);
而不是
$("#ProductCountry").html(data);