当前位置: 首页 > 面试题库 >

使用ajax自动完成

夏新翰
2023-03-14
问题内容

也许您可以解决一些Ajax问题。

我有AUTO COMPLETE代码-我输入城市名称,该代码会自动为我完成城市名称,还获取城市ID,并应将其放入隐藏的输入字段中(名称=“
cityID”)…但它没有做到这一点。

你能告诉我为什么吗?

html代码:

<p><label>city: </label><input type='text' name='cityName' value='$cityName'  id='keyword_city' autocomplete='off' />
    <span id='ajax_response_city' class='ajax_response' style='display:none;' ></span>
    <input type='hidden' name='cityID' value='$cityID' id='keyword_cityID'>
</p>

服务器端(仅输出):

echo '<li><a href=\'javascript:void(0);\' data-id="'.$row['cityID'].'">'.$final.'</a></li>';

脚本:

$("#ajax_response_city").mouseover(function(){
    $(this).find("li a").mouseover(function () {
          $(this).addClass("selected");
    });
    $(this).find("li a").mouseout(function () {
          $(this).removeClass("selected");
    });
    $(this).find("li a").click(function () {
          $("#keyword_city").val($(this).text());
          $("#keyword_cityID").val($(this).data().id);
          $("#ajax_response_city").fadeOut("slow");
    });
});

您可以在这里找到完整的JS:

http://www.dogger.co.il/js/ajax/autoComplate_city.js

问题答案:

尝试对ajax_response_city使用div而不是span标签。HTML被弄乱了,您的选择将不再起作用。

我举了一个例子:http :
//jsfiddle.net/me2loveit2/86T4f/

<div id='ajax_response_city' class='ajax_response'></div>

我也将开始使用适当的html(例如将li元素放入ul或ol)以避免此类问题。



 类似资料:
  • 问题内容: 我已经看到许多有关通过JSON传递带有标签和值属性的数组的问题,但关于传递字符串的问题并不多。我的问题是我似乎无法填写自动填充内容。我运行了一个转储函数,并通过JSON将这些样本值传递给自动完成功能: 这是一些代码: 这是fill_id.php: 我的自动完成功能保持空白。如何更改JSON数组以填充它?还是我的ajax成功函数中包含什么? 问题答案: 您可以非常坚持jQueryUI的自

  • 我正在使用materialize autocomplete插件创建带有autocomplete的多个标记输入。插件工作良好,但仅用于作为预先定义的数组传递的数据。如果数据是从ajax调用传递的,则插件不会显示带有选项的下拉列表,就好像没有结果一样。有结果事实上,他们被缓存(使用缓存选项),并显示为下拉只有在重新键入搜索短语。 总而言之,autocomplete插件不会等待ajax完成其请求并交付数

  • 我已经使用Spring Data Solr索引了一个位置数据库。我有以下字段: 我试图实现一个自动完成功能。我的ajax调用由一个控制器处理,该控制器调用一个存储库: 这适用于像“加利福尼亚”或“洛杉矶”这样的搜索。但是当我尝试像“洛杉矶”这样的多个单词时,我会得到一个例外: 严重:Servlet。路径为[/xxx]的上下文中servlet[spring mvc]的服务()引发异常[请求处理失败;

  • 问题内容: 我需要有关JQuery UI自动完成功能的帮助。我希望我的文本字段()显示来自AJAX请求的名称。这就是我所拥有的: 很感谢任何形式的帮助。 问题答案: 在您的AJAX回调内部,您需要调用该函数;传递包含要显示项目的数组。 如果响应JSON与jQueryUI自动完成功能接受的格式不匹配,则必须在将结果传递给响应回调之前在AJAX回调内部转换结果。

  • 问题内容: 好吧,我一直在为此绞尽脑汁(这太糟糕了),但是我一直尝试阅读我所能而且仍然无法使它起作用的内容。 试图用jQuery UI做自动完成 我的json看起来像这样 我正在尝试将此信息用作自动完成的来源。我得到的响应对象很好,我很难以正确的格式获得它,因此我可以将“ ”放在与“值”相关联的隐藏字段中,该字段需要显示为“值”的一部分落下。 尝试了一百万种不同的方法,但最近的尝试却在下面 请多谢

  • 问题内容: 我有一个文本框,当我输入一个字母说“ s”时,它会显示结果列表(例如google搜索)。 我正在使用带有Java的最新Selenium Webdriver。 我努力了 即使在每个步骤之后都添加了等待,这些都不起作用。 有什么建议? 谢谢。 更新:- 更新2:- 更新3:-我尝试使用Selenium 1,fireevent方法通过将参数作为’keydown’传递而起作用。目前,这应该是一