使用jquery ui autocomplete作为输入跨越

时间:2011-06-27 08:14:04

标签: jquery-ui search input html jquery-ui-autocomplete

在我正在构建的网页中,我开始使用< span> -tags作为输入,并启用了内容可编辑标记。这样做的原因是它们看起来更加美观,并且当你输入它们时它们能够重新调整它们。然后我在密钥的隐藏输入字段中保存跨度的内容。

我在需要时动态添加更多跨距。

现在我需要能够在人们输入我的span字段时自动完成,但是.autocomplete似乎不适用于span字段(?),是否有一些简单的解决方案?

<div>
  <input type="hidden" name="generated_name[1]" />
  <span contenteditable="true" class="editbox"></span>
  <input type="hidden" name="generated_name[2]" />
  <span contenteditable="true" class="editbox"></span>
</div>
<script>
  $(document).ready(function () {
    $('.editbox').live('keyup', function() {
      $(this).prev().val($(this).html());
    });
  });
</script>

该代码至少适用于我,我可以添加更多输入字段(输入+跨度)并且它可以工作。

现在我希望能够在键入而不是输入字段时进行搜索,并执行以下操作:

$(document).ready(function() {
  var tags = [
    "Tag1", "Tag2", "Tag3", "Tag4", "Tag5", "Tag6", "Tag7"
  ];
  $('.editbox').autocomplete({
    source: tags
  });
});

有人知道这是否有可能以简单的方式进行?

1 个答案:

答案 0 :(得分:0)

我想没有办法解决这个问题,因为自动完成依赖于在输入上使用。然后,那两个</value>在那里做什么?它们应该是</span>。 滥用跨度作为输入对我来说毫无意义。输入就是你正在使用它的目的,你也可以设置输入样式,这不是用跨度替换它们的好借口。