我试图通过ajax的帮助回复javascript与ajax完成后,脚本不起作用我认为浏览器运行javascript代码一次而不是要注意用ajax调用php后编写的代码
ajax代码
<script>
function makeGetReq(val) {
/////////////////////////////////
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("charts").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "ttc_rep_acor_ttcid.php?ttcid=" + val, true);
xmlhttp.send();
}
</script>
和php代码
require_once("includes/helperfunction.php");
mysql_connect("localhost", "root", "") or die("Error 3: " . mysql_error());
mysql_select_db("tedmon") or die("Error 2: " . mysql_error());
$table_Name = 'ttc_teachers_evaluation';
//////////////////////////////////////////////////////////
$sql = "SELECT * FROM `tedmon`.`$table_Name` WHERE `TTC_NAME`=" . $_GET['ttcid'];
$result = mysql_query($sql) or die("Error 1: " . mysql_error());
$num_rec = mysql_num_rows($result);
//$total_Participant_answered = mysql_num
$array1 = array();
$array2 = array();
$array3 = array();
$array4 = array();
$array5 = array();
$array6 = array();
$array7 = array();
$array8 = array();
$array9 = array();
$array10 = array();
$array11 = array();
$array12 = array();
$array13 = array();
$array14 = array();
$array15 = array();
$array16 = array();
$array17 = array();
$array18 = array();
$array19 = array();
$array20 = array();
$array21 = array();
//$array22 = array();
while ($row = mysql_fetch_array($result))
{
$array1[] = $row[11];
$array2[] = $row[12];
$array3[] = $row[13];
$array4[] = $row[14];
$array5[] = $row[15];
$array6[] = $row[16];
$array7[] = $row[17];
$array8[] = $row[18];
$array9[] = $row[19];
$array10[] = $row[20];
$array11[] = $row[21];
$array12[] = $row[22];
$array13[] = $row[23];
$array14[] = $row[24];
$array15[] = $row[25];
$array16[] = $row[26];
$array17[] = $row[27];
$array18[] = $row[28];
$array19[] = $row[29];
$array20[] = $row[30];
$array21[] = $row[31];
//$array22[] = $row[29];
}
// When using the getQustionChartsData functionality of the helperfunction.php we
// will need to be set the data source from sql DB in array format that
// allows you to generate chart data from database for view .
$percentageArray = getQustionChartsDataPercentage($array1);
$percentageArray2 = getQustionChartsDataPercentage($array2);
$percentageArray3 = getQustionChartsDataPercentage($array3);
$percentageArray4 = getQustionChartsDataPercentage($array4);
$percentageArray5 = getQustionChartsDataPercentage($array5);
$percentageArray6 = getQustionChartsDataPercentage($array6);
$percentageArray7 = getQustionChartsDataPercentage($array7);
$percentageArray8 = getQustionChartsDataPercentage($array8);
$percentageArray9 = getQustionChartsDataPercentage($array9);
$percentageArray10 = getQustionChartsDataPercentage($array10);
$percentageArray11 = getQustionChartsDataPercentage($array11);
$percentageArray12 = getQustionChartsDataPercentage($array12);
$percentageArray13 = getQustionChartsDataPercentage($array13);
$percentageArray14 = getQustionChartsDataPercentage($array14);
$percentageArray15 = getQustionChartsDataPercentage($array15);
$percentageArray16 = getQustionChartsDataPercentage($array16);
$percentageArray17 = getQustionChartsDataPercentage($array17);
$percentageArray18 = getQustionChartsDataPercentage($array18);
$percentageArray19 = getQustionChartsDataPercentage($array19);
$percentageArray20 = getQustionChartsDataPercentage($array20);
$percentageArray21 = getQustionChartsDataPercentage($array21);
// for generating div with dynamic id that allows ajax to locate data at that div
// starting from id number one up to 21 adding css inline class for div with id
// number ood and echoing the <br> tag at div id number even .
for ($x = 1; $x <= 21; $x ++)
{
//makeToolTip("#q".$x, $qustions[$x]);
if ($x % 2 != 0)
{
echo '<div id="q' . $x . '" class="col-lg-5" style="margin-right:100px;"> </div>';
} else
{
echo '<div id="q' . $x . '" class="col-lg-5" > </div>';
echo "<br>";
}
}
// When using the getChartView functionality of the helperfunction.php we will need
// to be set the data source from sql DB , div ID, question number which
// allows you to generate DRY, clean "HighCharts" view .
getChartView($percentageArray, "#q1", " کیفیت پلان درسی استاد", $num_rec);
getChartView($percentageArray2, "#q2", " وضاحت اھداف درس", $num_rec);
getChartView($percentageArray3, "#q3", " تنظیم صنف", $num_rec);
getChartView($percentageArray4, "#q4", " ارزیابی درس گذشته", $num_rec);
getChartView($percentageArray5, "#q5", " ارتباط درس گذشته با درس جدید", $num_rec);
getChartView($percentageArray6, "#q6", " کیفیت استفاده از میتودھای فعال", $num_rec);
getChartView($percentageArray7, "#q7", " در نظر گرفتن وقت درس با درنظر داشت پلان درسی ", $num_rec);
getChartView($percentageArray8, "#q8", " ارتباط فعالیت ھا به موضوع درس", $num_rec);
getChartView($percentageArray9, "#q9", " چگونگی اشتراک محصلین در فعالیت ", $num_rec);
getChartView($percentageArray10, "#q10", " استفاده از سوالات متعدد", $num_rec);
getChartView($percentageArray11, "#q11", " ھمخوانی میتود درسی اتخاذ شده با موضوع درس", $num_rec);
getChartView($percentageArray12, "#q12", " تون و بلندی صدای استاد", $num_rec);
getChartView($percentageArray13, "#q13", " متوجه بودن استاد به تمام محصلین", $num_rec);
getChartView($percentageArray14, "#q14", " استفاده از زبان ساده و واضح در تفھیم درس", $num_rec);
getChartView($percentageArray15, "#q15", " استفاده از مواد درسی", $num_rec);
getChartView($percentageArray16, "#q16", " چگونگی اشتراک محصلین در فعالیت", $num_rec);
getChartView($percentageArray17, "#q17", " توجه استاد به سوالھا و صحبت شاگردان", $num_rec);
getChartView($percentageArray18, "#q18", " سلیقه و وضع ظاھری استاد", $num_rec);
getChartView($percentageArray19, "#q19", " برخورد استاد با محصلان", $num_rec);
getChartView($percentageArray20, "#q20", " استفاده از تخته", $num_rec);
getChartView($percentageArray21, "#q21", " درس جدید خلاصه شد", $num_rec);
答案 0 :(得分:0)
如果您需要在PHP代码中打印共鸣,则可以创建div
<div id="message"></div>
并在您的JavaScript代码中
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("charts").innerHTML = xmlhttp.responseText;
document.getElementById("message").innerHTML = xmlhttp.responseText;
}
}
在你的div中你会看到回复
答案 1 :(得分:0)
如果ajax
将其称为返回并将脚本添加到DOM中。它不会执行。如果要执行脚本,请使用eval()
函数执行该脚本。例如:
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("charts").innerHTML = xmlhttp.responseText;
eval(document.getElementById("charts").innerHTML);
}
}
但是我可以看到你没有响应任何脚本,你只想在响应加载到test()
后调用DIV
函数。对于Definition
test
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("charts").innerHTML = xmlhttp.responseText;
test();//calling function here
}
}
应该已经在第一个文件中,然后您可以在获得响应后调用:
S