Ich bin ein neuer yii develeper. Ich möchte meine Datenbank auflisten und dann eine Schaltfläche neben alle meine Elemente setzen und dann, wenn Clinet auf Schaltfläche klicken, zeigt der Computer mir alle Details. Hier ist meine Ansicht Datei:Javascript in yii2 reagiert nicht
<h1> پایگاه داده ما </h1>
<script>
function showUser(Id) {
var xmlhttp;
if (Id == 0) {
document.getElementById("showmore").innerHTML = "Test";
return;
}
if (window.XMLHttpRequest)
{
// IE7+, Firefox, Chrome, Opera, Safari کد لازم براي مرورگر هاي جديد
document.getElementById("showmore").innerHTML = "Test2";
xmlhttp = new XMLHttpRequest();
}
else
{
// IE6, IE5 کد براي مرورگرهاي قديمي
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function ()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
document.getElementById("showmore").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "localhost/datils.php?q=" + Id, true);
xmlhttp.send ();
}
</script>
<style>
span
{
color: white;
}
</style>
<?php
use yii\widgets\LinkPager;
echo '<br>';
foreach($show as $k =>$v)
{
$Id= $v['id'];
//$Id=0;
echo $Id.".";
echo $v ['countryName'];
echo '<ul>';
echo '<li> پایتخت :';
echo $v ['capital'];
echo '</li>';
echo '<li>'.'جمعیت :';
echo '<span >i</span>'.(string)$v['population'];
echo '</li>';
echo '</ul>';
echo "<button value=$Id , onclick=showUser(this.value)>More</button>";
echo "<div id=showmore> </div>" ;
echo '<hr>';
}
echo LinkPager::widget([
'pagination'=>$page
]);
?>
Und hier ist meine datils.php Datei:
<?php
$q=$_GET["q"];
// این دستور مقدار پارامتر ارسالی از دستور ای جکس را دریافت می کند
$con = mysqli_connect("localhost", "root" , '' ,'mydatabase1'); // ایج اد ارتباط با پایگاه داده مورد نظر
if ($con->connect_error)
{
die("Connection failed: " . $con->connect_error);
}
$sql="SELECT * FROM countries WHERE id = '".$q."'"; // q دریافت اطلاعات از جدول مورد نظر بر مبنای پارامتر
$result = mysqli_query($con,$sql); // result ریختن نتیجه عملیات انتخاب اطلاعات از پایگاه داده در متغیر
echo "<table border='1'>
<tr>
<th>countryName</th>
<th>currencyCode</th>
<th>population</th>
</tr>";
while($row = mysqli_fetch_array($result)) // ساخت جدول در خروجی با نتیجه دریافتی از پایگاه داده
{
echo "<tr>";
echo "<td>" . $row['countryName'] . "</td>";
echo "<td>" . $row['currencyCode'] . "</td>";
echo "<td>" . $row['population'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con); /* // قطع ارتباط با پایگاه داده*/
?>
Mein Problem ist, das nicht funktioniert! Die Linie
document.getElementById("showmore").innerHTML = "Test2";
funktioniert gut und das bedeutet meine Funktion funktioniert, aber es reagiert nicht.
nse aus details.php. Bitte führen Sie mich!