用户输入商品后内容消失
Content disappears after user finishes entering groceries
大家新年快乐!我通过学习jquery来庆祝。我在下面的代码中添加了一些jQuery,并设法添加了一些内容,并用它更改了一些css。getgrocery函数工作得很好,正在做它应该做的事情。当用户输入完杂货后,程序(printgrocery)应该打印用户输入的列表。这部分也在工作....然而,当发生这种情况时,程序将删除标题(My grocery list)并删除所有样式。
我做错了什么?
EDITED CODE:删除了完整的代码,并添加了我更改的部分(注释了旧的代码)。
function printGroceries(groceryItems) {
if (groceryItems.length > 1) {
$('grocery-list').html('<ol class="items" id="list-items">');
//document.write("<ol>");
for(x=0; x < groceryItems.length;x++){
groceryItems;
$('#list-items').prepend('<li>' + groceryItems[x] + '</li>');
//document.write("<li>" + groceryItems[x] + '</li>');
}
$('#grocery-list').append('</ol>');
//document.write("</ol>");
} else {
$('#grocery-list').prepend('<p>Sorry, your list is empty.</p>');
//document.write('<p>Sorry, your list is empty.</p>');
}
}
问题:小提琴
试试这个
function printGroceries(groceryItems) {
if (groceryItems.length > 0) {
$('#grocery-list').html('<ol class="items" id="list-items">');
//document.write("<ol>");
for(x=0; x < groceryItems.length;x++){
groceryItems;
$('#list-items').prepend('<li>' + groceryItems[x] + '</li>');
//document.write("<li>" + groceryItems[x] + '</li>');
}
$('#grocery-list').append('</ol>');
//document.write("</ol>");
} else {
$('#grocery-list').prepend('<p>Sorry, your list is empty.</p>');
//document.write('<p>Sorry, your list is empty.</p>');
}
}
你错过了我在评论中建议的一些东西
1. if
条件应检查groceryItems.length > 0
2. $('grocery-list')
应该是$('#grocery-list')
,您缺少id选择器这里
解决方案:小提琴
既然你在使用jQuery;这是一个利用$.each()
的版本。此外,最好构建字符串并只追加一次,而不是一次又一次地追加每一项。
function printGroceries(groceryItems) {
var listItems = '';
if (groceryItems.length > 0) {
$.each(groceryItems, function (i, item) {
listItems += '<li>' + item + '</li>';
});
$('#grocery-list').append('<ol class="items" id="list-items">'+listItems+'</ol>');
} else {
$('#grocery-list').prepend('<p>Sorry, your list is empty.</p>');
}
}
相关文章:
- 当我在HTML中选择特定选项时,要消失的输入字段
- 在输入框中单击时 - 在附近显示文本 - 在单击时输出文本消失
- 更改焦点后,输入字段中的文本将消失
- 如何使按钮(输入类型=“提交”)在单击时消失
- 文本在单击时消失,但输入的新文本会消失
- 输入栏在几个塞昆德后消失
- 输入框和文本在IE8中退格/删除时消失
- 输入字段html5占位符没有'不要在javascript中添加值后就消失
- 动态添加的输入字段立即消失
- 输入文本框不断消失
- 无线电输入在页面重新加载时消失(枚举,foreach,默认选中,记住页面重新加载的答案)
- 为什么显示在其他地方的引导程序输入会立即消失
- 输入字段逐渐消失,取代了网站的其他部分
- jQuery Validator无效输入字段在成功提交后消失
- HTML<输入>按钮在单击时消失
- Ipad上的虚拟键盘使输入[类型=范围]滑块拇指消失
- 框阴影在输入元素上消失
- 表单文本字段默认在焦点处消失,用户输入保留在表单更正处
- 从两个输入文本字段,当我在一个输入数据,如果在下一个输入的东西,它必须消失
- 在IE10中,文本区占位符不会在焦点/输入时消失