0

私は、学生がクラスを入力してスケジュールを作成するのに役立つサイトを持っています。ボタンをクリックすると、ドロップダウンからコースを選択し、右側のボックスにクラス番号を入力できます。php を使用してボックスの内容を取得しようとしていますが、機能していません。問題の一部はid、ボックスの に javascript によって番号 (1、2、3 など) が割り当てられている可能性があります。

これがJSFIDDLEです(1つのクラスのみを追加します。2つのクラスの追加にはまだ取り組んでいません。また、最初の数字(100など)はドロップダウンからのものです。)

HTML:

<form action='http://people.brandeis.edu/~rnewman/schedule.php' method='POST'>
<div id="boxes"></div>
<br>
<input type='button' value='Add Class' id='add' style='height: 40px;'>
<input type='submit' style='height: 40px;' value='Create Schedule'>
</form>​

Jクエリ:

var x = 0;
 $(document).ready(function(){
 $("#add").click(function(){

   $('#boxes').append('<input type="text" id="' + ++x + '"><br>');  //the id isn't working
  });
 });

from schedule.php

echo $_POST['course'];
echo "<br>";
echo $_POST['0'];
echo $_POST['1'];
echo $_POST['2'];
4

3 に答える 3

2

私は PHP の専門家ではありませんが、通常、フレームワークは要素のname属性ではなく属性を探しidます。name入力テキスト ボックスに属性を追加すると、次のように動作するはずです。

$('#boxes').append('<input type="text" id="' + ++x + '" name="' + ++x + '"><br>');

お役に立てれば!

于 2012-08-06T13:43:37.597 に答える
2

この質問でわかるように、stackoverflow :

ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed 
by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), 
colons (":"), and periods (".").

したがって、要するに、 をid数字のように使用することはできません。そうです、他の人が言うように、name属性を追加する必要があります。

于 2012-08-06T13:43:44.890 に答える
0

入力に ​​NAME 属性を指定する必要があります。これは、PHP が入力のインデックスに使用するものです。

<input type="text" id="' + ++x + '" name="myNewInputs[]" />
于 2012-08-06T13:43:26.947 に答える