0
<script>
function funcGet(val)
{
  if(val=="Create new category")
  {
     var element = document.createElement("input");
     element.setAttribute("type", "input");
     element.setAttribute("name", "new_cat");
     element.setAttribute("placeholder", "Enter a new category name");
     var foo = document.getElementById("cat");
     foo.appendChild(element);

   }
 }

</script>
<div id="cat">
<form method="post" action="">
<input type="text" placeholder="Enter a topic name" name="word"><br/><br/><br/>
<input type="input" name="link" placeholder="Enter a link here"><br/><br/><br/>
<select name ="category" onchange="funcGet(this.value);">
<?php
 displayCat();
 ?>
</select>
<br/><br/>
</div>
<select name="site_type">
<?php
  displaySitetype();
?>
</select><br/><br/><br/>
<input type="submit" value="Submit data">
</form>

<?php
if($_POST['category']=="Create new category") {
  if($_POST['new_cat'])
  {
      $new_cat=mysql_real_escape_string($_POST['new_cat']);
      create_new_catentry($new_cat);
      $catname=$new_cat;
  }
  ?>

同じページで $_POST を使用して new_cat の値を取得できません。私は何を間違っていますか?私はそれを解決することができません。ページから他のすべての投稿データを問題なく取得できます。名前付けに問題はありますか? 何が問題なのかわからないのですが、私の Javascript は間違っていますか?

更新: 一番下にある php スクリプトは、システム全体ではなくほんの一部であることに注意してください。

4

2 に答える 2

1

JavaScript に新しい属性を追加します。

 element.setAttribute("id", "new_cat");
于 2013-04-09T16:19:07.417 に答える