php - 使用 json 和多个变量自动完成
问题描述
想知道是否有人可以指出我正确的方向。
这是项目的主页(index.php)。下面的脚本从正确显示的 fetch.php 接收值。我只需要自动完成 2 个输入框client_id和title。我知道问题出在脚本上,但无法弄清楚。
<input type="text" id="client_id" name="client_id" placeholder="ID" />
<input type="text" id="status" name="status" placeholder="Status" autocomplete="off" />
<input type="text" id="title" name="title" placeholder="Client" autocomplete="off" />
function setText(obj){
var val = obj.value;
console.log(val);
function concat(){
var x = <?php echo $client_id; ?>
var y = <?php echo $first_name; ?>
document.getElementById("client_id").value = x;
document.getElementById("title").value = y;
}
concat();
}
如果有以下脚本,标题将自动填写。
function setText(obj){
var val = obj.value;
console.log(val);
document.getElementById('title').value = val;
}
解决方案
您正在以一种没有意义的方式将 php 与 javascript 混合,因为您说这些值来自fetch
如果它真的是 PHP,那么(显然)你可以直接设置输入
<input type="text" id="client_id" name="client_id" placeholder="ID" value="<?php echo $client_id; ?>" />
<input type="text" id="status" name="status" placeholder="Status" autocomplete="off" />
<input type="text" id="title" name="title" placeholder="Client" autocomplete="off" value=" <?php echo $first_name; ?>" />
如果它是通过 fetch 进来的,你可以这样做:
let ref = 12; // the reference to get the data
fetch(`http://example.com/getClientData.php?ref=${ref}`)
.then(response => response.json())
.then(data => {
document.getElementById("client_id").value = data.client_id;
document.getElementById("title").value = data.client_title;
console.log(data)
});
推荐阅读
- cakephp - CakePHP 4.x - 如何烘焙 Twig 模板?
- python - 对带有精灵的 2d 数组(板)进行深度复制
- spring - Spring Boot - MongoDb 通过手动创建的查询查找
- python - glClearColor 返回负值?(溢出?)
- javascript - 如何在不使用 npm 或 nodejs 的情况下捆绑 javascript 文件?[ 独立的 javascript 捆绑器 ]
- java - ForEach 循环和 PropertyNotFoundExceptions 中的 JSP 错误
- python - 是否有输入 Google 结果的每个链接并提取文本的程序?
- javascript - 在输入字段中输入 youtube 视频 url,它应该显示该视频的 iframe 以进行确认
- python - 如何通过从python中的用户获取函数名来调用另一个文件中的函数?
- android - 如果仅安装了面部作为生物特征,则使用 AndroidX.Biometric 的 KeyGeneration 会失败