追加ボタンをクリックすると、新しいテキストボックスとラジオボタンを追加するために、以下のコードをhtmlに追加するためのコードを使用しています。追加されたテキストボックスの名前は、入力データと、入力データを異なるクエリに使用するときに異なる変数に区別するための追加番号(クリック数)です。この入力(数値は入力)をラジオボタンで使用して、ラジオボタンがチェックされているかどうかに基づいて、指定した数値の上または下の特定のデータを照会するかどうかを決定します。jQuery内のラジオボタンのPHP IF文のチェック
<input id="btnAdd" type="button" value="Add" />
<br />
<div id="TextBoxContainer">
</div>
<br />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var click_number = 0;
$("#btnAdd").bind("click", function() {
var input = $("<label>input <textarea rows='1' name='input_"+ click_number +"'><?php echo $_POST['input_"+ click_number +"']; ?></textarea></label> ");
var above_below = $("<input type='radio' name='abovebelow_"+ click_number +"' id='above_"+ click_number +"' value='Above' <?php if(isset($_POST['abovebelow_"+ click_number +"']) && $_POST['abovebelow_"+ click_number +"'] == 'Above') echo \"checked='checked'\"; ?>><label for='above_"+ click_number +"'>Above</label><input type='radio' name='abovebelow_"+ click_number +"' id='below_"+ click_number +"' value='Below' <?php if(isset($_POST['abovebelow_"+ click_number +"']) && $_POST['abovebelow_"+ click_number +"'] == 'Below') echo \"checked='checked'\"; ?>><label for='below_"+ click_number +"'>Below</label><br/> ");
hgcBio.appendTo('#TextBoxContainer');
above_below.appendTo('#TextBoxContainer');
click_number++;
});
</script>
現在、htmlはjQueryで使用していないときに機能しますが、このjQuery形式ではラジオボタンが機能しません。私はこの部分を削除したときに、私はもはや、エラーメッセージが出ないので
<?php if(isset($_POST['abovebelow_"+ click_number +"']) && $_POST['abovebelow_"+ click_number +"'] == 'Above') echo \"checked='checked'\"; ?>
:私は上記の中/変数の下にあるPHPコードまでの誤りを縮小しています。エラーメッセージは、 "解析エラー:解析エラーです。識別子(T_STRING)" '"がその行にあります。私はjQuery(入力変数)の他の部分でPHPを使用しているので、私は問題がif文であると推測していますか?ここでif文を使用する別の方法はありますか?これを行う別の方法がありますか?
if文の文字列の一部が正しくフォーマットされていないようです。 click_numberはphp変数になっていますか?なぜエコーバックスラッシュ後の最初の文字ですか? – Shovalt
jQuery変数はありません。バックスラッシュは引用符をエスケープすることです。私はちょうどそこに単一引用符を使用することができたかもしれないが、それは私の部分の可視性の理由のために多くだった。 – Steven
JavascriptにPHPのデータを取り込みたい場合は、PHP側でjqueryの '$ .ajax()'メソッドと 'json_encode()'メソッドを調べてください。私はそれが後で道路の上で_多くの問題を引き起こす可能性があるので、特にこの方法をお勧めしません。 – Jhecht