如何在 jQuery case 语句中循环?

发布于 2024-10-15 05:05:46 字数 338 浏览 2 评论 0原文

我正在尝试执行类似

case KEY.ATSIGN:
    while(!KEY.SPACE) {
        clearTimeout(timeout);
        timeout = setTimeout(onChange, options.delayLong);
    }
    break;

ATSIGN = 50 的操作,这是 @.. 的 ascii 代码。这会调用自动完成下拉列表。

SPACE = 32 这是空格字符的ascii。

我需要它下拉自动完成并允许子集搜索或 matchContains 搜索直到输入空格字符。这可能吗?

I am trying to do something like this

case KEY.ATSIGN:
    while(!KEY.SPACE) {
        clearTimeout(timeout);
        timeout = setTimeout(onChange, options.delayLong);
    }
    break;

ATSIGN = 50 which is the ascii code for the @.. This invokes the autocomplete dropdown.

SPACE = 32 which is the ascii for the space character.

I need it to dropdown the autocomplete AND allow subset searching or matchContains searching up until a space character is entered. Is this possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

[浮城] 2024-10-22 05:05:46

你的代码是这样的吗?

switch(e.which){
  case KEY.ATSIGN : while(!KEY.SPACE){...}
}

如果是,那就错了。当按下按键时,就像 while(true) 一样。

试试这个

switch(e.which){
  case KEY.SPACE: onChange();
}

我不太明白。但试试这个。

<input type='text' /><select>...</select>
...
$("input").keydown(function(e){
  switch(e.which){
    case KEY.ATSIGN : $(this).keyup(doSomething);
    case KEY.SPACE : $(this).unbind("keyup");
  }
})
function doSomething(){...}

is your code like this?

switch(e.which){
  case KEY.ATSIGN : while(!KEY.SPACE){...}
}

if it is, then its wrong. when ever keypressed happen its like while(true).

try this

switch(e.which){
  case KEY.SPACE: onChange();
}

i'm not quite understand. but try this.

<input type='text' /><select>...</select>
...
$("input").keydown(function(e){
  switch(e.which){
    case KEY.ATSIGN : $(this).keyup(doSomething);
    case KEY.SPACE : $(this).unbind("keyup");
  }
})
function doSomething(){...}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文