2015-06-16 74 views
0

我在学习JavaScript,我想创建一个小型计算器COC站点。 我会知道是否有可能在Javascript中编辑PHP变量?更改PHP中的变量值FOR javascript

这是我的HTML/PHP代码:

在这一部分,在“HDV”的div,我只是把10个按钮,当我点击一个,去谁显示命名为第二个div我的JS功能“niv caserne”,在这第二个div中,我会改变变量“$ i”的值,它位于我的JS函数中的PHP中。 例如,如果我点击按钮1,我的JS功能将显示我的div“niv caserne”,FOR从1变为1,但如果我点击按钮2,我的JS功能会显示我的div“niv caserne “太多,但在从1至2,等去..

<body> 
<!-- Page Content --> 
<div id="container"> 
    <div id="HDV"> 
     <p>Hotel De Ville: 
      <?php 
       for ($i=1; $i <= 10 ; $i++) 
       { 
        ?> 
         <button type="button" class="btn btn-default" value="<?php echo "HDV_$i" ?>" onclick="infosHDV(<?php echo $i ?>)"><?php echo $i ?></button> 
        <?php 
       } 
      ?> 
     </p> 
    </div> 

    <!-- HIDE ALL OF THIS OR DISABLE BEFORE USER CHOOSE A TOWN 
     WHEN HE CHOOSE A TOWN, CALCULATE AND DISPLAY ONLY THE RIGHT INFORMATION --> 
    <div id="niv caserne" style="display:none"> 
     <p>Niveau des casernes: 
      <?php 
       for ($i=1; $i <= 4 ; $i++) 
       { 
        ?> 
        <div class="col-md-1"> 
         <select class="form-control"> 
          <option>1</option> 
          <option>2</option> 
          <option>3</option> 
          <option>4</option> 
          <option>5</option> 
          <option>6</option> 
          <option>7</option> 
          <option>8</option> 
          <option>9</option> 
          <option>10</option> 
         </select> 
        </div> 
        <?php 
       } 
      ?> 
     </p> 
    </div> 

这里是我的JS功能:

​​3210
+6

php在服务器上运行,JavaScript在客户端上运行。除了通过执行http请求(例如ajax)之外,您不能让JS在PHP中更改任何内容。 –

+0

没有办法做到这一点,而没有执行HTTP请求 – n00dl3

+0

如前所述,由于PHP运行在服务器端并且JavaScript是客户端,因此您不能在'PHP'中用'JavaScript'来更改任何内容。但是因为你没有连接到数据库,所以你可以用javascript代替PHP创建'for',那么你就可以控制它。 – alexandreferris

回答

0
function generatebtn() 
{ 
var btnHtml = ''; 
for (i=1; i <= 10 ; i++) 
{ 
btnHtml="<button type="button" class="btn btn-default" value="'+i+'"onclick="infosHDV("'+i+'")">"'+i+'"</button>";     
} 

您可以使用JavaScript的for循环,而不是php.like及以上在页脚中调用generatebtn()。 为其他循环和定义的第二个循环的全局变量[更好地重命名(i)变量]做同样的事情,所以当你想改变(i)变量值时,你可以改变它/覆盖它