开机自检而不提交,并用开机自检的临时数据填写输入字段



我在代码上遇到了一些问题,这个想法是发布一些卡号并从其他服务器 API 获取有关该人的信息,然后使用按钮用我从 API 获得的数据填充由输入 ID 标识的一些输入字段,而无需将其保存到数据库。

当前步骤:

  1. PHP 表单 (1.php( -> 工作
  2. 输入卡号 ->工作正常
  3. 使用 Ajax 将卡号提交到其他 PHP 文件以获取来自 API 的响应(2.php,我也在这里回显结果(->工作
  4. Div 弹出窗口(包含从 2.php 回显的响应(-> 工作
  5. 使用一些按钮将数据从 2.php 填充到 1.php 多输入字段 <- 问题就在这里

1.php

<script>
function checkcard()
{
var name=document.getElementById('card').value;
var dataString='card='+ name;                                    
$.ajax({                                     
type:"POST",
url:"../loader/2.php",                                
data:dataString,                                  
cache:false,
success: function(html){
$('#msg').html(html);
}
}) return false;    
}
</script>
<div>
<label class="col-form-label"><b>Card Number</b></label><br>                                       
<input class="form-control" type="text" id="card" name="card">
</div>
<button type="submit" class="btn btn-primary mb-3" onclick="return 
checkcard()">Check
</button>
<div id="msg">
</div>
<label class="col-form-label"><b>NICK</b></label><br>                                           
<input class="form-control" type="text" id="nick" name="nick">
<script type="text/javascript">                                                   
function autoFill() {                                                      
document.getElementById('nick').value = <?php echo json_encode($nick); ?>;
}    </script>
<button type="button" class="btn btn-primary" onClick="autoFill(); return true;">

自动填充功能和按钮在 1.php 中,当我单击按钮时,什么也没发生,我也尝试将其放入 2 中.php但是当我单击按钮时,页面刷新/重新加载并且响应消失了,知道我该怎么办吗?

通过在1.php中使用<?php echo json_encode($nick); ?>,您将返回 PHP,除了将整个1.php文件提交回服务器进行 PHP 预处理外,这没有用。

请记住,您已经通过 ajax 检索了2.php的数据。您可以将该数据存储在全局变量中,以便整个1.php都可以访问它。

这是1.php的重铸

<div>
<label class="col-form-label"><b>Card Number</b></label><br>                                       
<input class="form-control" type="text" id="card" name="card">
</div>
<button type="submit" class="btn btn-primary mb-3" onclick="return 
checkcard()">Check
</button>
<div id="msg">
</div>
<label class="col-form-label"><b>NICK</b></label><br>                                           
<input class="form-control" type="text" id="nick" name="nick">
<button type="button" class="btn btn-primary" onclick="return autoFill()">
<script type="text/javascript">     
var global_data = '';
function checkcard()
{
var name = $('#card').val();
var dataString ='card='+ name;                                   
$.ajax({                                     
type:"POST",
url:"../loader/2.php",                               
data:dataString,                                     
cache:false,
success: function(data){
global_data = data;
$('#msg').html(data);
}
}) 
return false;   
}                   
function autoFill() {                                                        
$('#nick').val(global_data);
return false;
}    
</script>

请注意,我使用的是 jQueryval()方法而不是 JavaScriptvalue属性,并且我为checkcard()autoFill()函数返回 false 以避免页面刷新。

NICK

函数自动填充(({ var name=$('#nick'(.val((; Windows.location.href = "../loader/1.php"?name=" + name; }

最新更新