ホームページ >バックエンド開発 >PHPチュートリアル >PHP Web ページでカスケード ドロップダウン ボックスをループした後に重複データを削除する方法
PHP Web ページでカスケード ドロップダウン ボックスをループした後に重複データを削除する方法
たとえば、マテリアルには複数のスタイル、異なる厚さのコア ボード、および異なる厚さの樹脂クロスがあります。
JavaScript を使用して、PHP Web ページにカスケード ドロップダウン ボックスを作成します。マテリアルをドロップダウン ボックス (一次選択) として使用し、マテリアルの 1 つを選択するときに、対応するコア ボードをドロップダウン ボックス (派生ボックス 1) に割り当て、対応する樹脂クロスを別のドロップダウン ボックスに割り当てる方法ボックス (派生ボックス 1) ボックス 2)、私のコードは次のとおりです。実行時に派生ボックスに重複したデータが含まれるのはなぜですか?この重複データを削除する方法を教えてください。
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e
bdb835828ecd15d05ba2655d9284eaee
b2386ffb911b14667cb8f0f91ea547a76e916e0f7d1e588d4f442bf645aedb2f
080b747a20f9163200dd0a7d304ba388
body {
margin-left: 0px;
margin-top : 0px;
margin-right: 0px;
margin-bottom: 0px;
}
531ac245ce3e4fe3d50054a55f265927
9c3bca370b5104690d9ef395f2c5f8d1
6c04bd5ca3fcae76e30b72ad730ca86d
3b5fd58fae0da4dc40108aecd7156a7e
< ;!--************ JavaScript 処理領域--onChange ***************-->
var onecount2;
subcat2 = new Array();
aa5fa4b0e7a8602d40507ba4f31f6f3f
onecount2= 134f841bfb9a43efdece15725c394253;
327dff398f6405969556cce8eb5328ff
subcat2 [535b2e1cb7a150d6efd24a6b64dbff5f] = new Array("17264453df7f72e9de104b164f32e26a",81d743bf9c7f15ec1cdef580d1a9eb08","b8533e928672b7301964b1607777ded4","efeaa7328a7d4dd7c7479ed332ed869e");
6e3d70b845fce8e22f2cfab7e464cfc5
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--) { *************ページフォーム************************ ****-->
1d0cca861bf7eac11a34a2851a3bdff1ebdc760e32318303567cf77a5fb1efe1
f82a6aa1ef2f74d8d902059c61f1fa45素材を選択4afa15d3069109ac30911f04c56f3338
e3aaf35844ef35bf6e45d96c2cb4984b">bdc9a9548c7a01e976795ad752bc750e
18bb6ffaf0152bbe49cd8a3620346341 0c6dc11e160d3b678d68754cc175188a
60b005eb6fdbcd418ea9217a8fa9ad7f
aba78b0dcb1db399ec615ce176d67bce====4afa15d3069109ac30911f04c56f3338
18bb6ffaf0152bbe49cd8a36203463410c6dc11e160d3b678d68754cc175188a
0f63a5952cce3fd9bc240463846bd7ed
aba78b0dcb1db399ec615ce176d67bce====< ;/オプション>
18bb6ffaf0152bbe49cd8a3620346341
f5a47148e367a6035fd7a2faa965022e
36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e
------解决思路------ -----
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 />