我目前正在做的是将用户输入与没有页面刷新的答案数组进行比较。这很好。
我需要做的是执行上述操作,并将输入的输入时间与秒数进行比较,这是对象中的另一个值。为简单起见,我们现在说时间是20。我该怎么做比较
我已将答案推送到数组中,但我对其他方法开放了。
[
{
"id": "1",
"seconds": "20",
"answer": "John"
},
{
"id": "2",
"seconds": "40",
"answer": "kwai"
}
]
JS
var score = 0;
var items = [];
$.getJSON('urlpath', function(data) {
$.each(data, function(key, val) {
items.push(val.answer);
});
$('#form_submit').click(function() {
var qS = $('#form_answer').val();
$.ajax({
type:"GET",
url:"",
data: qS,
datatype: 'html'
});
if ($.inArray(qS, items) > -1 ) {
//Do something
}
else {
//Do nothing
}
return false;
});
});
答案 0 :(得分:1)
试试这个:
var score = 0;
var items = [];
$.getJSON('urlpath', function(data) {
$.each(data, function(key, val) {
items.push([val.seconds, val.answer]);
});
$('#form_submit').click(function() {
var answer = $('#form_answer').val();
var seconds = $('#form_seconds').val();
var matches = $.grep(items, function(el) {
return (el[0] == seconds && el[1] == answer);
});
if (matches.length > 0) {
//Lenght > 0, if specified values within an array
}
else {
//Do nothing
}
return false;
});
});