PHP Web ページでカスケード ドロップダウン ボックスをループした後に重複データを削除する方法
たとえば、マテリアルには複数のスタイル、異なる厚さのコア ボード、および異なる厚さの樹脂クロスがあります。
JavaScript を使用して、PHP Web ページにカスケード ドロップダウン ボックスを作成します。マテリアルをドロップダウン ボックス (一次選択) として使用し、マテリアルの 1 つを選択するときに、対応するコア ボードをドロップダウン ボックス (派生ボックス 1) に割り当て、対応する樹脂クロスを別のドロップダウン ボックスに割り当てる方法ボックス (派生ボックス 1) ボックス 2)、私のコードは次のとおりです。実行時に派生ボックスに重複したデータが含まれるのはなぜですか?この重複データを削除する方法を教えてください。
header("Content-Type: text/html; charset=gb2312");
$link = mysql_connect("localhost", "root", "12345670")
または die("接続できませんでした : " .mysql_error());
mysql_select_db("test") または die("データベースを選択できませんでした");
mysql_query("set names 'gb2312'");
$sqlSel = "マテリアルから * を選択 ";
$result = mysql_query($sqlSel) または die("クエリが失敗しました: " . mysql_error()); ;
while( $row = mysql_fetch_array($result) )
{
$forum_data[] = $row;
}
//print_r ($forum_data);
mysql_free_result( $result);
$sqlSel2 = "コア左から選択 * core.material=prepreg.material 上のプリプレグを結合";
if( !($result2 = mysql_query($ sqlSel2)) )
{
die('コアリストをクエリできませんでした');
}
$forum_data2 = array();
while( $row2 = mysql_fetch_array($ result2) )
{
$forum_data2[] = $row2;
}
mysql_free_result($result2);
?>
< ;!--************ JavaScript 処理領域--onChange ***************-->
var onecount2;
subcat2 = new Array();
$num2 = count($forum_data2);
?>
onecount2= < ?php echo $num2;?>;
for($j=0;$j<$num2;$j )
{
?>
subcat2 [] = new Array("",","","");
functionchangelocation(マテリアル)
{
document.myform.city.length = 0;
var マテリアル =マテリアル;
document.myform.city.options[0] = 新しいオプション('====',''); ; onecount2 ; j )
{
if (subcat2[j][1] == マテリアル)
{
document.myform.city.options[document.myform.city.length] = 新しいOption(subcat2[j][2],subcat2[j][0]);
document.myform.p1.options[document.myform.p1.length] = new Option(subcat2[j][3], subcat2[ j][0]);
}
}
}
function RemoveAllOptions(selectbox){ var i;
for(i=selectbox.options.length- 1 ;i>=0;i--) { *************ページフォーム************************ ****-->
<フォーム名="myform" メソッド="投稿">
------解决思路------ -----function removeAllOptions(selectbox){
var i;
for(i=selectbox.options.length-1;i>=0;i--) {
selectbox.remove(i);
}
}
このメソッドには调用はなく、应该選択之後、清一次、その後再び結合するデータ追加のようなオプション
changelocation メソッドに追加:
<br />function changelocation(Material) <br />{ <br />document.myform.city.length = 0; <br />var Material=Material; <br />var j; <br />document.myform.city.options[0] = new Option('====',''); <br /><br />removeAllOptions(document.myform.p1); // 加这里<br /><br />for (j=0;j < onecount2; j++) <br />{ <br /> if (subcat2[j][1] == Material) <br /> { <br /> document.myform.city.options[document.myform.city.length] = new Option(subcat2[j][2],subcat2[j][0]);<br /> document.myform.p1.options[document.myform.p1.length] = new Option(subcat2[j][3],subcat2[j][0]);<br /> <br /> } <br /> } <br />}<br />
ログイン後にコピー