Chrome扩展程序 - 如果值包含特定字符串,请从下拉菜单中选择

时间:2014-06-02 17:44:55

标签: jquery google-chrome-extension

如果包含某些字符串,如何从下拉菜单中选择值? 下拉菜单包含时间值,如10:20,10:25,10:30,10:35,10:40,10:45。

我希望选择时间值为XX:15或XX:45的选项(其中XX可以是小时)。

类似的东西:

$('.option_row_panel', $content).each(function(i) {
 var minutes = [15,45];
 $('.option_row_expiry_list option:contains("' + 15 + '")').attr('selected', true);
 $('.option_row_expiry_list option:contains("' + 45 + '")').attr('selected', true);
});

这样我可以选择想要的选项,但我怎么能用单行呢?

谢谢

2 个答案:

答案 0 :(得分:0)

使用正则表达式的示例

$('.option_row_expiry_list option').each(function() {
   if($(this).text().match(/\:15/)) {
      $(this).closest('select').val($(this).val());
   }
});

答案 1 :(得分:0)

可能有一种方法可以触发所需的事件,因此可能会调用所有附加的事件处理程序

function simulateEvent(eventname, element) {
  var event = new MouseEvent(eventname, {
    'view': window,
    'bubbles': true,
    'cancelable': true
  });
  element.dispatchEvent(event);
}

因此,您可以模拟选项的点击以及选择的更改(在上一个答案的.each()内)

simulateEvent('click', $(this)[0]);
simulateEvent('change', $(this).closest('select')[0]);