我最近從常規JavaScript提示切換到jQuery插件'Alertify'提示。但是,當我將變量定義爲提示的響應,並在稍後的警報中使用該變量時,它會打印'[object Object]'。經過幾個小時的谷歌搜索和測試,我仍然沒有拿出一個答案。「[對象對象]」代替變量字符串在Alertify提示中使用
這是我的代碼:
do {
var fullLoop = false;
var user = alertify.prompt("What is your name?", function (e, str) {
if (e) {
user.toUpperCase();
if (str.length === 0) {
alertify.alert("Please enter your name.");
fullLoop = true;
}
} else {
alertify.alert("Please enter your name.");
fullLoop = true;
}
}, "Name");
do {
var bestLoop = false;
var best = alertify.prompt("So " + user + ", what is your greatest ability, STRENGTH, SPEED, or SMARTS?", function (e, str) {
if (e) {
best.toUpperCase();
if (best === "STRENGTH" || best === "SPEED" || best === "SMARTS") {
var offset = options.indexOf(best);
if (offset != -1) {
options.splice(offset, 1);
}
} else {
alert("Please choose either STRENGTH, SPEED, or SMARTS as your greatest ability.");
bestLoop = true;
}
} else {
alertify.alert("Please choose either STRENGTH, SPEED, or SMARTS as your greatest ability.");
bestLoop = true;
}
}, "Greatest Ability");
} while (bestLoop);
alertify.alert("Great! So " + best + " is yor greatest ability.");
} while (fullLoop);
你可以看到我遇到here錯誤。
我也注意到我的if
有關字符串的陳述被忽略,我假設有一個連接,但它是什麼?我沒有發現任何錯誤,所以我是否錯誤地使用了Alertify?
據我所看到的,你的插件的使用是錯誤的,'VAR用戶= alertify.prompt(「什麼是你的名字?「,函數(e,str)'不返回輸入的用戶名,它返回一個alertify對象的實例 –