0

这是我第一次寻求帮助,我对编码知之甚少。这主要是为我完成的。

在产品页面上,我有两个下拉菜单。一种带有版本选择,一种带有尺寸选择。版本选择决定了提供的尺寸。

当页面加载时,相应产品的第一个记录集将按照最初选择的方式使用。

<body onload="WA_FilterAndPopulateSubList(rssize_WAJA,MM_findObj('SelectVersion'),MM_findObj('SelectSize'),0,0,false,': '); showprice()">

这是在下拉菜单中调用showprice的函数,因为每当用户进行选择时,页面上的三个值会切换,prize,pzn和item number(英文没有pzn):

function showprice() {
var fm = document.segufix_1_ATC_<?php echo $row_DetailRS1["product_id"]; ?>;
var selectedversion = fm.SelectVersion.options[document.segufix_1_ATC_<?php echo $row_DetailRS1["product_id"]; ?>.SelectVersion.selectedIndex].text;
var selectedsize = fm.SelectSize.options[document.segufix_1_ATC_<?php echo $row_DetailRS1["product_id"]; ?>.SelectSize.selectedIndex].text;
var versionset = fm.SelectVersion.value;
var sizeset = fm.SelectSize.value;
var priceset = js_array[(sizeset+0+versionset)].toFixed(2);
<?php if(isset($_SESSION['languageID']) && (!($_SESSION['languageID'] == "2" || $_SESSION['languageID'] == "4"))) {  ?>
priceset = priceset.replace(".", ","); 
<?php } ?>
var pznset = js_array2[(sizeset+0+versionset)];
var itemnolongset = js_array3[(sizeset+0+versionset)];

document.getElementById('pricelabel').innerHTML=' € '+priceset;
document.getElementById('pznlabel').innerHTML=pznset;
document.getElementById('itemnolonglabel').innerHTML=itemnolongset;

}

这是第二个选择菜单(尺寸菜单):

<select class="<?php echo $tmpElementClassSize; ?> name="SelectSize" id="SelectSize" onchange="showprice()">
                  <?php
do {  
?>
                  <option value="<?php echo $row_rssizedefault['size_id']?>"<?php if (!(strcmp($row_rssizedefault['size_id'], $row_rssize['size']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rssizedefault['size']?></option>
                  <?php
} while ($row_rssizedefault = mysql_fetch_assoc($rssizedefault));
$rows = mysql_num_rows($rssizedefault);
if($rows > 0) {
  mysql_data_seek($rssizedefault, 0);
  $row_rssizedefault = mysql_fetch_assoc($rssizedefault);
}
?>
                </select>

我希望尺寸菜单最初选择尺寸“M”。

替换此行:

<?php if (!(strcmp($row_rssizedefault['size_id'], $row_rssize['size']))) {echo "selected=\"selected\"";} ?>

用这条线:

<?php echo $row_rssizedefault['size_id']?>"<?php if ($row_rssizedefault['size_id']=='4' ?>

最初选择尺寸“M”,但奖品显示不正确(尽管它会将产品放入购物车中并带有正确的奖品)。为了显示“M”,我还必须删除 body 标记中的 onload。否则它将在瞬间显示“M”,然后变为“XS”(第一条记录)。

是否可以在 javascript 函数中从数据库中选择默认值?

对不起,很长的帖子。这是产品页面之一的链接:http ://www.segufixshop.eu/detail_en.php?recordID=13

4

1 回答 1

0

Having the body tag like this:

<body onload="showprice()">

and the select attribute like this:

<?php if ($row_rssizedefault['size_id']=='4') {echo "selected=\"selected\"";} ?>

preselects size "M" in the size menu, but then the size menu is populated with all size choices and not size choices relevant to the version.

Is it possible to change the body tag, so that the size menu will populate according to the version menu without resetting the size to "XS"?

<body onload="WA_FilterAndPopulateSubList(rssize_WAJA,MM_findObj('SelectVersion'),MM_findObj('SelectSize'),0,0,false,': '); showprice()">
于 2013-05-14T14:41:27.577 回答