我无法解决的任务是在点击按钮时将PHP文件加载到JavaScript文件中。 我不希望PHP或结果显示在页面上。我只想访问PHP文件生成的结果字符串。
我知道JS是客户端和PHP服务器端,但是在开始时加载我需要的所有PHP文件会导致分解。
下面的片段显示了我现在的表现。 不幸的是,这并不好用,到目前为止还没有任何按钮直接参与。 (见:MIME type error when loading data)
db2js.php (从数据库中提取数据并将其转换为类似JSON的字符串)
<?php
CONNECTING TO DATABASE
QUERY
$result=RESULT OF QUERY LOOKING LIKE JSON
echo 'db_output='.$result;
?>
index.html (需要数据的文件)
<html>
<head>
<script language="JavaScript" src="db2js.php"></script>
</head>
<body>
<script language="JavaScript">
var JSON_db_output = JSON.parse(db_output);
document.write(dbausgabe);
</script>
</body>
</html>
答案 0 :(得分:0)
执行以下操作:
<html>
<head>
<script language="JavaScript">
<?php
CONNECTING TO DATABASE
QUERY
$result=RESULT OF QUERY LOOKING LIKE JSON
echo 'var db_output='.$result;
?>
</script>
</head>
<body>
<script language="JavaScript">
var JSON_db_output = JSON.parse(db_output);
document.write(dbausgabe);
</script>
</body>
</html>
答案 1 :(得分:0)
为什么你不能使用ajax
在html代码中添加带有id或类
的按钮<input type ="button" id="myphploader">
<div id="div1" style="visibility:hidden"></div>
假设您将php文件设为"file1.php"
,请使用此javascript函数
<script src="js/modernizr-2.js"></script>
<script src="js/owl.js"></script>
<script src="js/jquery.js"></script>
<script src="js/jquery_002.js"></script>
<script type="text/javascript">
jQuery(document).ready(function ($) {
$("#myphploader").click(function () {
$.ajax({
type: "POST",
url: "file1.php", // your php file
data: { variable1: variable1}, // incase you want to pass an value to php file
cache: false,
success: function(html)
{
$("#div1").html(html).show();
}
});
});
});
</script>
您可以使用
从“div1”获取结果document.getElementById("div1").innerHTML
答案 2 :(得分:0)
如果您了解jQuery并且可以使用Ajax,请尝试使用
的index.html
<html>
<head>
<title>TITLE</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<script>
$(document).ready(function(){
$.ajax({
type: "POST",
url: "db2js.php",
success: function(response){
console.log(response);
document.write(response);
},
dataType: 'json'
});
});
</script>
</body>
</html>
db2js.php
<?php
$arr = array('a', 'b', 'c');
$json = json_encode($arr);
echo $json;
exit();
?>
答案 3 :(得分:0)
根据您的要求 AJAX是最佳解决方案 。您可以通过以下代码段获得想法:
bpGraph = {0: [0, 2, 1], 1: [2, 1, 1], 2: [0, 0, 2]}
希望此代码段可以帮助您解决问题。 如有任何需要,请告诉我。