我有以下声明。 " ls_query"正在返回地址字段。有没有办法从数据库中获取此地址字段的ID?
以下代码从mysql数据库获取搜索结果(地址)并替换demo值。
function myFunction() {
var x = document.getElementById("ls_query");
var adr = x.value;
document.getElementById("demo").innerHTML = "address is:" +adr;
}
</script>
我不知道如何才能获得&#39; id&#39;这个选定的地址&#39;来自数据库。程序应从搜索框中选择特定地址并发布ID值。有什么建议。
答案 0 :(得分:0)
您可以向您的服务器上的AJAX
脚本发送PHP
请求,该脚本将返回ID
向JS添加一些这样的函数:
function getIdByAddress(address) {
var xhr = new XMLHttpRequest();
xhr.open('GET', 'handler.php?address=' + address, false);
xhr.send();
if (xhr.status != 200) {
return 0;
} else {
return xhr.responseText;
}
}
然后在你的函数中调用它:
function myFunction() {
var x = document.getElementById("ls_query");
var adr = x.value;
document.getElementById("demo").innerHTML = "address is:" +adr;
var id = getIdByAddress(adr);
}
用PHP创建这样的东西:
<?php
// here You establish connection to database
if(!empty($_GET['address'])) {
// escape $_GET['address']
// make query to database and fetch data
// print fetched data to screen
}
?>
如果您的HTML中已经准备好了地址,那么您只需将data-id
属性添加到每个地址块,然后在您的JS函数中获取它:
function myFunction() {
var x = document.getElementById("ls_query");
var adr = x.value;
document.getElementById("demo").innerHTML = "address is:" +adr;
var id = x.id;
}