Javascript将无法在php页面上运行

时间:2009-04-25 15:58:56

标签: php javascript html

我有一个php页面,我有一些javascript代码,可以运行一些字段。我很好地复制了我的工作测试,并修改了一些适合的代码。好吧它不起作用,我似乎无法工作。有什么东西显然我不知道还是有其他原因导致它没有运行?

 <?php

 //server connection info

 ?>
 <html>
 <head>
 <title>Survey</title>
 <link rel="stylesheet" type="text/css" href="styles.css" />

       <script type="text/javascript">
           function Total()
           {

               var a=document.getElementById("a").value;
               var b=document.getElementById("b").value;
               var c=document.getElementById("c").value;
               var d=document.getElementById("d").value;

               a=parseInt(a);
               b=parseInt(b);
               c=parseInt(c);      

               var total=a+b+c;



               document.getElementById("total").value=total;


           }


       </script>


 </head>


 <body>
 <h1>QUALITY OF LABOR SURVEY</h1>
 <p />
 <h2>ABOUT YOUR COMPANY</h2>


 <div class="Wrapper">

     <form id="Main" method="post" action="Process.php">

         <div class="Question">
              1. In what state and county is your business located? (click below)
         </div>
         <div class='answer'>
         <?php
             $tsql = "select
                StateCountyID,
                State,
                County
                from dbo.StateCounty
                where State='MO'
                      and Active='True'
                order by State";

             $tsql2 = "select
                StateCountyID,
                State,
                County
                from dbo.StateCounty
                where State='IL'
                      and Active='True'
                order by State";


             /* Execute the query. */
             $stmt = sqlsrv_query( $conn, $tsql);
             if ( $stmt )
             {

                 echo "<span><select name='ListMO'>";
                 echo "<option value='0'>MO-County</option>";

                 while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC))
                 {

                     echo "<option value='".$row[0]."'>";
                     echo $row[2];
                     echo "</option>";

                 }

                 echo "</select></span>";

             }
             else
             {
                  echo "Error in statement execution.\n";
                  die( print_r( sqlsrv_errors(), true));
             }


             $stmt2 = sqlsrv_query( $conn, $tsql2);
             if ( $stmt2 )
             {

                 echo "<span><select name='ListIL'>";
                 echo "<option value='0'>IL-County</option>";

                 while( $row = sqlsrv_fetch_array( $stmt2, SQLSRV_FETCH_NUMERIC))
                 {
                     echo "<option value='".$row[0]."'>";
                     echo $row[2];
                     echo "</option>";

                 }

                 echo "</select></span>";

             }
             else
             {
                 echo "Error in statement execution.\n";
                 die( print_r( sqlsrv_errors(), true));
             }
        ?>
           </div>



         <table width="700px">
           <tr>
             <td style="font-size: 1.2em; font-weight: bold;">
                 ABOUT YOUR EMPLOYMENT
             </td>
             <td style="font-weight: bold;">
                 (Exclude Temporary Employees Throughout Survey)

             </td>
           </tr>

         </table>

         <p />
         <b>Please estimate the following:</b>







         <p />




         <div class="Question">
              4. Number of Full-Time Hourly Employees (Eligible for Full-Time Benefits)
         </div>

         <div class="Answer">
              <input type="text" id="a" value="0" onchange="Total();" />
         </div>

         <div class="Question">
              5. Number of Part-Time Hourly Employees(Not Eligible for Full-Time Benefits)
         </div>

         <div class="Answer">
              <input type="text" id="b" value="0" onchange="Total();" />
         </div>

         <div class="Question">
              6. Salaried Employees
         </div>

         <div class="Answer">
              <input type="text" id="c" value="0" onchange="Total();" />
         </div>





         <div class="Question">
              7. Is this your current number of employees?  If not, change responses to 4, 5, and 6.
         </div>

         <div class="Answer">
              <input type="text" id="total" value="0" onchange="Total();" />
         </div>

5 个答案:

答案 0 :(得分:8)

var d=document.getElementById("d").value;

产生错误,因为您似乎没有id="d"

的元素

答案 1 :(得分:4)

我还想提供一些改进代码的建议。

调试javascript

  • firefox扩展firebug绝对是调试你的javascript的必备工具。

https://addons.mozilla.org/en-US/firefox/addon/1843

编写Javascript

  • 将javascript放在单独的文件中,例如:myjavascript.js并在html页面中包含该文件。这将减少您的页面重量,您将更清晰地分离代码。
  • 使用javascript框架帮助您生成更好的javascript,例如jquery或yui(Yahoo!用户界面库)。

http://jquery.com/
http://developer.yahoo.com/yui/

编写PHP

  • 通过将PHP放在单独的文件中并包含它来更好地分离PHP / HTML。例如:

http://toys.lerdorf.com/archives/38-The-no-framework-PHP-MVC-framework.html/

答案 2 :(得分:1)

要检查的一些事项。

  • 它在所有浏览器中都不起作用吗?
  • 您是否确认在单独的文件中确切的代码有效
  • 您是否尝试将脚本移至页面底部?

您还应该在Firefox中使用调试器,甚至可以为Firefox找到Firebug之类的工具。帮助找到这样的问题。

答案 3 :(得分:0)

请尽量缩短你的问题!隔离它!

我还强烈建议您使用Firebug

您可以在任何时候找到答案:)

答案 4 :(得分:0)

HTML中没有元素“d”。如果你注释掉这一行:

var d=document.getElementById("d").value;

它应该可以正常工作