[英]Can't pass string variable to function
我有一個下拉菜單,當單擊其中一項時,我調用此函數:
onClick(type) {
type.preventDefault();
let query = type.target.text;
PokeApi.pokemonType(query).then(function(data) {
console.log(data);
}.bind(this));
}
console.log返回未定義。
當我這樣做時:
onClick(type) {
type.preventDefault();
let query = type.target.text;
console.log(query);
console.log(typeof query);
PokeApi.pokemonType(query).then(function(data) {
console.log(data);
}.bind(this));
}
第一個console.log將返回下拉菜單項的文本。 第二個console.log將返回字符串。 現在,當我將查詢傳遞給PokeApi.pokemonType時,我可以從api中獲取404錯誤,並且第三個console.log返回未定義。
但是如果我像這樣直接輸入下拉菜單的文本:
onClick(type) {
type.preventDefault();
PokeApi.pokemonType("ice").then(function(data) {
console.log(data);
}.bind(this));
}
一切正常,我從api返回了正確的對象。
知道為什么會這樣嗎? 我究竟做錯了什么?
您必須獲取下拉菜單中所選元素的值
var sel = document.getElementById('myDropdown'),
var selectedText = sel.options[sel.selectedIndex].value;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.