我列出了可排序的列表,以重新排列单词以构成有意义的句子。我无法弄清楚为什么检查答案部分的警报不起作用。这不起作用:alert('success');
https://codepen.io/Tarun1980/pen/ZNdJze
$(document).ready(function () {
var words = [];
var i = 0;
function showWords() {
$('#container').append("<ul id='list'></ul>");
for (var j = 0; j < words[i].question.length; j++) {
$('#list').append("<li class='box' id=" + words[i].question[j] + ">" + words[i].question[j] + " " + "</li>");
}
$('#list').sortable({
placeholder: 'back',
axis: 'x',
opacity: '0.7'
});
}
showWords();
$(document).on('click', '#btn', function () {
var guess = $('.box').text();
$('#list').empty();
if (i < words.length); {
var correct = words[i].answer;
i++;
showWords();
}
if (guess === correct) {
alert('success');
}
});
});
答案 0 :(得分:0)
HTML中的换行符被视为文本节点,由单个空格组成。它解释了为什么这样...
<ul>
<li>Hello</li>
<li>World</li>
</ul>
...尽管其中没有空格,也呈现为"Hello World "
。
这样,由于最后一个guess
和</li>
之间的换行符,您的</ul>
尾随空格。
要减轻这种情况,只需trim()
您的猜测即可。
if (guess.trim() === correct) {
alert("success");
}