【发布时间】:2018-07-23 11:26:27
【问题描述】:
我正在尝试使用 JQuery 的自动完成功能如下:
<form name="form_data" action="#" method="post">
<label for="plp_who">Pick Name:</label>
<input type="text" name="plp_who" id="plp_who" class="form-control compact" value="">
</form>
$('##plp_who').autocomplete({source: "/autocomplete/legacy_contact.cfm",minLength: 2});
"legacy_contact.cfm" 搜索数据库并返回JSON 格式的结果列表。当该列表包含单引号或 & 符号时,即使我转义字符,控件也无法响应。 “失败”是指控件没有给出任何返回结果的指示,尽管没有抛出 Javascript 错误。
例如:
[ {"label" : "Bob Michelucci, Rossi\'s Pop Up Marketplace", "value" : "9338"} ]
失败
[ {"label" : "Bob Michelucci, Rossis Pop Up Marketplace", "value" : "9338"} ]
成功
[ {"label" : "Brian Wright, R\&B Contracting \& Excavation", "value" : "8694"} ]
失败
[ {"label" : "Brian Wright, R and B Contracting and Excavation", "value" : "8694"} ]
成功
谁能建议可能出了什么问题?我不敢相信没有办法对这些字符进行编码以便它们不会破坏控制,但是尝试使用 & 或 ' 将它们转义是行不通的,因为它当然包含一个 & 符号。
【问题讨论】:
-
您有没有找到解决办法?还在努力吗?
标签: javascript jquery json jquery-ui autocomplete