如何根据用户输入显示警报

时间:2017-03-02 09:35:40

标签: javascript

var teams=[
  {key:1, label:"Faizel", type:1},
  {key:15, label:"Phumzi", type:1},
  {key:2, label:"Julian", type:2},
  {key:3, label:"Rydel", type:1},
  {key:14, label:"Srdjan", type:2},
  {key:5, label:"Doi", type:1},
  {key:6, label:"Brandon", type:2},
  {key:7, label:"Jose", type:1},
  {key:8, label:"Lesley", type:1},
  {key:9, label:"Robin", type:1},
  {key:10, label:"Bigshow", type:2},
  {key:11, label:"Template", type:1},
  {key:12, label:"Slab View", type:1},
  {key:13, label:"Dulla", type:1},
  {key:16, label:"Nelson", type:1},
];

我想根据用户在文本字段中输入的键显示警报(示例)如果用户在文本字段中输入14警报应该说“Srdjan”

5 个答案:

答案 0 :(得分:0)

使用Array#find。在key中输入input,然后点击click按钮。

var teams = [{key:1,label:"Faizel",type:1},{key:15,label:"Phumzi",type:1},{key:2,label:"Julian",type:2},{key:3,label:"Rydel",type:1},{key:14,label:"Srdjan",type:2},{key:5,label:"Doi",type:1},{key:6,label:"Brandon",type:2},{key:7,label:"Jose",type:1},{key:8,label:"Lesley",type:1},{key:9,label:"Robin",type:1},{key:10,label:"Bigshow",type:2},{key:11,label:"Template",type:1},{key:12,label:"Slab View",type:1},{key:13,label:"Dulla",type:1},{key:16,label:"Nelson",type:1}],
    input = document.getElementById('inp');

function func(){
  var prop = teams.find(v => v.key == inp.value).label;
  console.log(prop);
}
<input id='inp'>
<button onclick='func()'>click</button>

答案 1 :(得分:0)

&#13;
&#13;
var teams=[
  {key:1, label:"Faizel", type:1},
  {key:15, label:"Phumzi", type:1},
  {key:2, label:"Julian", type:2},
  {key:3, label:"Rydel", type:1},
  {key:14, label:"Srdjan", type:2},
  {key:5, label:"Doi", type:1},
  {key:6, label:"Brandon", type:2},
  {key:7, label:"Jose", type:1},
  {key:8, label:"Lesley", type:1},
  {key:9, label:"Robin", type:1},
  {key:10, label:"Bigshow", type:2},
  {key:11, label:"Template", type:1},
  {key:12, label:"Slab View", type:1},
  {key:13, label:"Dulla", type:1},
  {key:16, label:"Nelson", type:1},
];

var key = 14;

alert(teams.find(function(item){
  return item.key === key
}).label);
&#13;
&#13;
&#13;

答案 2 :(得分:0)

输入数字并点击检查

&#13;
&#13;
var teams=[
{key:1, label:"Faizel", type:1},
{key:15, label:"Phumzi", type:1},
{key:2, label:"Julian", type:2},
{key:3, label:"Rydel", type:1},
{key:14, label:"Srdjan", type:2},
{key:5, label:"Doi", type:1},
{key:6, label:"Brandon", type:2},
{key:7, label:"Jose", type:1},
{key:8, label:"Lesley", type:1},
{key:9, label:"Robin", type:1},
{key:10, label:"Bigshow", type:2},
{key:11, label:"Template", type:1},
{key:12, label:"Slab View", type:1},
{key:13, label:"Dulla", type:1},
{key:16, label:"Nelson", type:1},
];
function check(){
var val=document.getElementById('inputT').value;
if(val!=""){

for(var i=0;i<teams.length;i++){
		if(teams[i].key==val){
          alert(teams[i].label)
        }
}
}
}
&#13;
<input type="text" id="inputT">
<button onclick="check()">
check
</button>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

试一试:

var teams = [
  {key:1, label:"Faizel", type:1},
  {key:15, label:"Phumzi", type:1},
  {key:2, label:"Julian", type:2},
  {key:3, label:"Rydel", type:1},
  {key:14, label:"Srdjan", type:2},
  {key:5, label:"Doi", type:1},
  {key:6, label:"Brandon", type:2},
  {key:7, label:"Jose", type:1},
  {key:8, label:"Lesley", type:1},
  {key:9, label:"Robin", type:1},
  {key:10, label:"Bigshow", type:2},
  {key:11, label:"Template", type:1},
  {key:12, label:"Slab View", type:1},
  {key:13, label:"Dulla", type:1},
  {key:16, label:"Nelson", type:1},
];

document.getElementById('displayAlert').addEventListener("click", function() {
  var inputVal = document.getElementById('team').value;
  var selectedTeam = teams.find(function(value) {
    return value.key === parseInt(inputVal);
  });
  alert(selectedTeam.label);
});
<input type="text" id="team">
<button id="displayAlert">Display Alert</button>

答案 4 :(得分:-1)

我建议使用lodash

有了它,很容易根据属性找到对象:

// get the input with jquery
var value = $('#myinput').val();

var resultObject = _.find(teams, function(obj) {
    return obj.key === parseInt(value);
});

alert(resultObject.label);