1

次のようなフォームがあります。

 <form name="myform" action="All.php" method="get">
 <input type='text' id='tx' name='tx' value=''>
 <td height="8" align="right" valign="middle"><a href="javascript: submitform('All')">All Cities</a> | <a href="javascript: submitform('Newyork')">Newyork</a> | <a href="javascript: submitform('Police')">Police</a></td></form>

<script type="text/javascript">
function submitform(val)
{
$("#tx").val(val);
document.myform.submit();
}
</script>

そして All.php で:

 <form method="get" action="index1.php" id="frm1">
 <select id="category" onchange="showSelected1();" style="width:150px">
 <option></option>
 <option value="1" <?php if($_GET["categoryText"] == "Marriages") echo "selected"; ?> >Marriages</option>
 <option value="2" <?php if($_GET["categoryText"] == "Birthdays") echo "selected"; ?> >Birthdays</option></select>
 <input type="hidden" id="categoryText" name="categoryText" value='<?= $_GET['categoryText']; ?>'/>

<select id="city" onchange="showSelected();" style="width:150px">
<option><?= $_GET['tx']; ?></option>
<option></option>
<option value="1" <?php if($_GET["cityText"] == "Newyork") echo "selected"; ?> >Newyork</option>
<option value="2" <?php if($_GET["cityText"] == "Police") echo "selected"; ?> >Police</option></select>
<input type="hidden" id="cityText" name="cityText" value='<?= $_GET['cityText']; ?>'/>
<input type="button" value="Submit" onclick="formSubmit()"/></form>
<script language="JavaScript" type="text/javascript">
<!--
function showSelected()
{
var selObj = document.getElementById('city');
var cityTextObj = document.getElementById('cityText');

var selIndex = selObj.selectedIndex;
cityTextObj.value = selObj.options[selIndex].text;
}
//-->
</script>
<script language="JavaScript" type="text/javascript">
<!--
function showSelected1()
{
var selObj = document.getElementById('category');
var categoryTextObj = document.getElementById('categoryText');

var selIndex = selObj.selectedIndex;
categoryTextObj.value = selObj.options[selIndex].text;

}
//-->
</script>

つまり、最初のページのコンテンツから、All.php のフォーム自体に入力されます。選択した都市を変更せずに送信ボタンをクリックすると、All.php で都市の値が表示されず、index1.php に取り込まれません。何故ですか?

4

2 に答える 2

0

以下のコードに間違った変数名を書き込んでいます

<script type="text/javascript">
function submitform(val)
{
$("#hx").val(val);
document.myform.submit();
}
</script> 

txではなくhxを使用しているため、コードは次のようになります。

<script type="text/javascript">
function submitform(val)
{
$("#tx").val(val);
document.myform.submit();
}
</script>

これを変更して、コードを再試行してください。

私はあなたのコードに他の多くの問題を見てきました、一重引用符(')と二重引用符( ")の使い方を学びましょう。あなたはこれを書きました

value='<?= $_GET['categoryText']; ?>'  which is wrong.

正しい方法はvalue='<?php $_GET["categoryText"]; ?>'

これに従ってコードを更新し、再度実行して、問題が発生した場合はここに戻ってください。

于 2012-10-16T10:27:49.947 に答える
0

あなたが試すことができます

document.getElementById("myform").submit();
于 2012-10-16T10:17:20.833 に答える