1

我有一个 Jscript 查询。

我做了一些阅读,发现 AJAX 只是一个 lfash 脚本的端服务器,可以在 Linux 上使用 php。(如果我错了,请纠正我)

我不知道脚本是如何工作的,所以这是新的,我尝试了几次不同的尝试,但没有运气。

我有一个下拉框 (Box1)(从数据库填充) 我还有另一个框 (Box2) 用于计算插入到我的数据库中,用于 hte 站点的其他部分的其他用途。

当有人在点击提交按钮之前更改 Box1 下拉列表时,我需要 Box2 来更改图形。

我认为因为我有计算,这让我陷入困境......代码如下......有人可以帮我弄清楚(我想我需要某种形式的脚本来做到这一点。)答案......

盒子1

<td><p>selection 1</p>
         <select id="t1_type" name="t1_type">

<?php $result = mysql_query("SELECT * FROM `t2` ORDER BY t2_value");
while($valuerow = mysql_fetch_array($result)){
        echo '<option value="'.$valuerow['t2_name'].'">'.$valuerow['t2_name'].'</option>'; } ?>

方框2

    <input name="t1_value" id="t1_value" value="
    <?php 
      $var1 = $row_value['t2_value']; 
      $var2 = $row_dropdown['t1_number']; 
      $total = round ($var2 *  $var1); 
      echo "" . $total . ""; 
    ?>" />

我希望这是您需要的所有代码,(如果需要更多,请告诉我)

它需要做的是每当有人在单击提交按钮之前更改 box1 选项时显示新的计算,因此它将正确的计算提交到数据库以供将来使用。

我认为当“t2_name 从 box1.

再次成为了解解决方案的最佳链接。(现在从我的上一个问题中了解加入!几乎是中级用户。;-))

4

1 回答 1

0

编辑 :

我看到你的第二个框是我相信的文本框,如果那是问题,那么你应该做这样的事情

<select id="t1_type" name="t1_type" onchange="change(this);">
   <?php 
      $result = mysql_query("SELECT * FROM `t2` ORDER BY t2_value");
      while($valuerow = mysql_fetch_array($result))
      {
          echo '<option value="'.$valuerow['t2_name'].'">'.$valuerow['t2_name'].'</option>';
      } 
   ?>
</select> 

<select>这就像您在问题中所做的那样定义了您的框。首先添加一个onChange事件<select>,然后创建一个函数来处理onChange事件。<select>每当用户更改元素中的项目时,都会触发 onChange 事件。

Javascript:

(把这部分代码放在上面</head>

<script language="javascript" type="text/javascript">
    function change(element)
    {
     // do here whatever you want
     // you can change the value of the <input> box with :
     // document.getElementById(element.id).value = your_value
     // If you want to see if this part works, then try adding this :
     // alert("It works!");
     // If you want to get the text of the item which has been selected in Box1 use :
     // $("#t1_type option:selected").text();

    }
</script>

注意:因为 PHP 是服务器端,你不能在没有页面刷新的情况下动态更新你的 Box2,但是 Javascript 是客户端并且可以做到这一点。

注意:$("#t1_type option:selected").text();代码要求您将 jQuery 库包含到您的脚本中。如果要使用它进行计算,请务必将此变量转换为浮点数、整数或双精度数,否则结果将给出 NaN(非数字)

包含 jQuery 库的教程:http://docs.jquery.com/Tutorials: Getting_Started_with_jQuery

如果您是 JavaScript 新手,您应该尝试一些教程。w3Schools.com 上的那些对我帮助很大,但有些人说他们并不总是正确的,但无论如何,阅读一些关于 Javascript 的东西来真正了解你在做什么,而不是复制粘贴代码 :)

于 2013-03-18T08:34:39.027 回答