具有属性

时间:2017-08-28 13:05:47

标签: javascript angularjs

我需要做出类似的事情:

function keyupHandler(keyEvent){
   angular.element('div.keyFriendly[key='+keyEvent.key +']').click();
}

但它不起作用。如果我使用angular.element(document.querySelector('div.keyFriendly[key='+keyEvent.key +']'))

,我会收到错误消息

enter image description here我可以这样做:

function keyupHandler(keyEvent){
   let mass = angular.element(document.querySelectorAll('div.keyFriendly'));
   for(let i=0;i<mass.length;i++){
       if(mass[i].attributes.key.value==keyEvent.key) mass[i].click();
   }
}

这满足了我的需求。但我希望有一些方法可以让它变得更简短,不是吗?

1 个答案:

答案 0 :(得分:0)

问题是你没有在字符串中分配属性值。

你想要的是:

function keyupHandler(keyEvent){
   angular.element('div.keyFriendly[key="'+keyEvent.key +'"]').click();
}