我正在尝试运行此查询:
function q4() {
var a4 = document.getElementsByName('q4');
var correctAnswers = 0; // declare and initialize `correctAnswers`
for (var i = 0; i < a4.length; i++) { // declare `i`
if (a4[i].checked) {
if (a4[i].value == "a" || a4[i].value == "d") {
correctAnswers++;
}
}
}
if (correctAnswers == 2) {
console.log("Correct!");
} else {
console.log("Incorrect");
}
}
但我一直收到这个错误:
<div class="question-box">
<div class="question">
<h3>Question Four: Identify two output devices from the images.</h3>
</div>
<div class="answers">
<input type="checkbox" name="q4" value="a">A) <img src="imgs/printer.jpg" alt="question image"><br/>
<input type="checkbox" name="q4" value="b">B) <img src="imgs/keyboard.jpg" alt="question image"><br/>
<input type="checkbox" name="q4" value="c">C) <img src="imgs/scanner.jpg" alt="question image"><br/>
<input type="checkbox" name="q4" value="d">D) <img src="imgs/speakers.jpg" alt="question image"><br/>
</div>
<br>
<input type="button" name="submit" value="Check Answer" onclick="q4()">
<h3 id="Answer4"> </h3>
</div>
当我运行此查询时,它完美运行:
db.zips.find({"state":"GA"}, {"pop":{$gt:0}}).sort({pop:1}).limit(5)
我正在尝试找到“state”=“GA”的字段,然后“pop”大于0的字段,并将其限制为5个结果并按升序排序。
当我将"errmsg" : "Unsupported projection option: pop: { $gt: 0.0 }"
部分作为查找函数中的第一个参数时,它会运行,但它忽略了我只希望状态等于“GA”的事实。我不知道如何解决这个问题,有谁知道什么是错的?
答案 0 :(得分:7)
Mongodb的find函数有两个参数,查询和投影。您要触发的查询有两个对象,第二个被视为投影条件。
您的query
应该在单个对象中保留所有条件。
db.zips.find({
"state":"GA",
"pop":{$gt:0}
})
.sort({pop:1})
.limit(5)