【问题标题】:Javascript in yii2 is not respondingyii2 中的 Javascript 没有响应
【发布时间】:2016-09-14 06:46:03
【问题描述】:

我是一个新的 yii 开发者。 我想列出我的数据库,然后在我的所有元素旁边放一个按钮,然后当 clinet 单击按钮时,计算机会显示所有详细信息。 这是我的视图文件:

<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
]);
?>

这是我的 datils.php 文件:

<?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);   /* //       قطع ارتباط با پایگاه داده*/
?>

我的问题是这不起作用!线

 document.getElementById("showmore").innerHTML = "Test2";

工作正常,这意味着我的功能正在工作,但没有响应。

来自 details.php 的 nse。 请指导我!

【问题讨论】:

    标签: javascript php yii yii2


    【解决方案1】:

    您的视图文件中需要进行一些更正:

    1. 而不是

    echo "<button value=$Id , onclick=showUser(this.value)>More</button>";
    

    使用

    echo "<button value='$Id' onclick='javascript:showUser(this.value)'>More</button>";
    

    2. 代替

    xmlhttp.send ( );
    

    应该是

    xmlhttp.send();
    

    【讨论】:

      猜你喜欢
      • 2021-09-12
      • 1970-01-01
      • 2016-12-05
      • 2017-11-09
      • 1970-01-01
      • 1970-01-01
      • 2018-02-02
      • 1970-01-01
      • 2018-04-11
      相关资源
      最近更新 更多