繁体   English   中英

html表单未从javascript和php发布

[英]html form not posting from javascript and php

我有一个HTML表单,该表单将数据发布到php文件中进行处理,在此表单上有一个动态生成的组合框,该组合框是使用javascript从php文件生成的。 加载页面时,组合框显示并运行良好,但是提交表单时,该框的值未发布。

JavaScript函数是

function showUser(str) {
    if (str == "") {
        document.getElementById("selSubCat").innerHTML = "";
        return;
     } else { 
         if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
         } else {
             // code for IE6, IE5
             xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         }
         xmlhttp.onreadystatechange = function() {
             if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                 document.getElementById("selSubCat").innerHTML = xmlhttp.responseText;
              }
         }
         xmlhttp.open("GET","getSubCats.php?Cat="+str,true);
         xmlhttp.send();
    }
}

的HTML是

    <td >Category:</td>
      <td > 
        <select name="Cats" onchange="showUser(this.value)" ><?    

        $qryCats="SELECT * FROM tblCategories";
        $resCats=mysql_query($qryCats,$dbMain);
        while($rowCats = mysql_fetch_array($resCats)){
        echo "<option value='".$rowCats['Name']."'>".$rowCats['Name']."</option>";
        }
    ?>
    </select>

    </td>
    </tr>
    <tr>
    <td >Sub Category:</td>

    <td  id="selSubCat"> 
    </td>
    </tr>

和PHP文件:

    <? 
    include("dbconfig.php");
   $cat=$_GET['Cat'];

    $qryCats="SELECT * FROM tblSubCats WHERE Parent='" .$cat. "'";
        $resCats=mysql_query($qryCats,$dbMain);
        if ($numrow=mysql_num_rows($resCats)>0){
            echo "<select name='subCats'>";
        while($rowCats = mysql_fetch_array($resCats)){
        echo "<option value='" .$rowCats['Name']. "'>" .$rowCats['Name']. "</option>";
        }

        echo "</select>";
        }
        else{
            echo " There are no sub categories ";
        }
    ?>

任何建议将不胜感激,我不知道为什么要发布除子类别之外的所有其他内容

检出name属性。 HTML它是Cats但在您的代码中您正在使用$_GET['Cat']; 它应该是

$cat=$_GET['Cats'];

解决了,我在HTML页面上有一张表格,里面是表格。 我交换了周围的标签,以便表格位于表单内,并且动态字段过得很好。 不知道为什么在表中有一个表单阻止了这些表单的发布,但至少现在可以了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM