Javascript 有没有办法从HTML源代码中隐藏自动完成数组?
我有一个JQuery自动完成函数,由一个json_编码的PHP数组提供。一切正常,但当我右键单击站点以查看页面源代码时,我可以看到整个阵列。此阵列包含哪些敏感信息?有没有更好的方法来组织这段代码,使它更私密,具有相同的功能级别 在主PHP/HTML页面上:Javascript 有没有办法从HTML源代码中隐藏自动完成数组?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有一个JQuery自动完成函数,由一个json_编码的PHP数组提供。一切正常,但当我右键单击站点以查看页面源代码时,我可以看到整个阵列。此阵列包含哪些敏感信息?有没有更好的方法来组织这段代码,使它更私密,具有相同的功能级别 在主PHP/HTML页面上: <?php include 'autocomplete.php'; ?> 它必须是这样的: $( "#birds" ).autocomplete({ source: "search.php",
<?php include 'autocomplete.php'; ?>
它必须是这样的:
$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
select: function( event, ui ) {
log( ui.item ?
"Selected: " + ui.item.value + " aka " + ui.item.id :
"Nothing selected, input was " + this.value );
}
});
参考:
search.php
必须转换json
值,然后将其显示为自动完成的一部分
参考这把小提琴:
更新1:
while($product_search->fetch())
{
$data[] = array(
'label' => trim($product_code)
);
}
echo json_encode($data);
JS代码:
$("#inputfield").autocomplete({
source:'search.php',
minLength:4
});
自动完成值是由ajax动态获取的,您不必将其存储在变量中。如果实现正确,HTML页面源代码不应以这种方式显示自动完成值。因此,您建议我改为使用ajax实现自动完成?请检查我的答案
search.php
必须动态获取值,但尚未完成。。。当我检查元素时,它似乎发现了这个错误:xhr.send((s.hasContent&&s.data)| | null);在search.php文件中,“echo json_encode($names);”是否正确?是的,以键值对的形式。我没有建议的url。。。除非search.php文件是建议的url?
$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
select: function( event, ui ) {
log( ui.item ?
"Selected: " + ui.item.value + " aka " + ui.item.id :
"Nothing selected, input was " + this.value );
}
});
while($product_search->fetch())
{
$data[] = array(
'label' => trim($product_code)
);
}
echo json_encode($data);
$("#inputfield").autocomplete({
source:'search.php',
minLength:4
});