Jquery append()不能正常工作
Jquery append() not working properly
我有以下HTML,其中我通过将类别ID和名称传递给函数来动态创建类别按钮。目的是在div #dvsoft
中显示代表类别的产品菜单。
<div id="tabbed-nav2">
<ul id="con1">
<span>
<div class="drinks">Drinks</div>
</span>
<%for (int i = 0; i < dtCategory.Rows.Count; i++) {
string str = dtCategory.Rows[i]["CategoryName"].ToString();
int CategoryId =Convert.ToInt32(dtCategory.Rows[i]["ProductCategoryId"]);
%>
<li><a href="javaScript:;" value="<%= CategoryId %>" > <%= str %> </a></li>
<%} %>
</ul>
<div class="center-content">
<div id="dvSoft"></div>
</div>
</div>
这是在点击类别按钮时调用getDataUsingAjax的事件处理函数:
$('#con1').on('click', 'a', function (e) { //<--CHANGED DATA TO 'a'
var id = $(this).attr('value');
//alert("Y123");
getDataUsingAjax(id);
});
在下面的函数中,我从处理程序获得响应并将其附加到#dvSoft
div的HTML内容。从每个请求中正确返回数据,但问题是只有第一个按钮(Drinks)的产品被显示。当点击任何其他类别时,都不会显示任何产品。
奇怪的是,如果我在第二个按钮(餐)上点击五到六次,然后再次点击饮料,那么餐项目就会显示出来。
function getDataUsingAjax(id) {
$.get('<%=ResolveUrl("~/AjaxHandler.ashx") %>', { op: 'GetUserData', value: id }, function(data, status) {
$('#dvSoft').empty();
var siteContents = data.contents;
$(data).each(function() {
var html = '<div class="items">';
html += '<div class="inr-item">';
html += '<img src="' + this.Picture + '" style="margin-top: 4px;"/>';
html += '</div>';
html += '<h4 class="item-title">';
html += this.ProductName;
html += '</h4>';
html += '<span class="item-rate">';
html += this.Price;
html += '</span>';
html += '</div>';
$('#dvSoft').append(html);
你做得很好
$('#dvSoft').empty();
,每次按下链接。
另一个注意事项,你迭代的是"data"而不是"siteContents"
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 正在尝试使用if和else添加类,但无法正常工作
- Jquery FadeIn FadeOut 只工作一次
- Foreach无法在Typescript中工作
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- JS可以在Chrome中工作,但不能在Firefox中工作
- 最大高度转换不;不工作,工作缓慢
- Gulp-rev:不是第一次工作,而是在第一次工作之后工作
- JQuery - Ajax: encodeUriComponent不工作(EncodeUri工作)