javascript - Magento 显示可配置产品的动态 SKU...选择所有选项后才显示

标签 javascript php magento dynamic

所以我刚刚找到this code这几乎就是我想要的。我需要代码在选择选项时动态显示可配置产品的 sku(简单产品的 sku)。唯一的问题是,在选择选项之前,它会显示第一个简单的产品 sku。我希望它在选择所有选项之前不显示任何内容。

代码如下: 应用程序/设计/前端/rwd/default/template/catalog/product/view/type/options/configurable.phtml

<?php
$conf = Mage::getModel('catalog/product_type_configurable')->setProduct($_product);
$col = $conf->getUsedProductCollection()->addAttributeToSelect('*')->addFilterByRequiredOptions();
?>
<script type="text/javascript">

var Skus =new Array();

<?php
$count = 1;
$itemId = array();
foreach($col as $simple_product){
$itemId[] = array($simple_product->getSelectLabel() => $simple_product->getSku());
}

foreach($itemId as $val){
foreach($val as $k => $v){
echo 'Skus['.$count.'] = "'.$v.'";'. "\n";
$count++;
}
};

?>

$j(document).ready(function(){

$j("#productcode").html("Product Code: " +Skus[1]);

$j("select#attribute<?php echo $_attribute->getAttributeId() ?>").change(function(){
var position = $j("#attribute<?php echo $_attribute->getAttributeId() ?> option").index($j("#attribute<?php echo $_attribute->getAttributeId() ?> option:selected"));

$j("#productcode").html(Skus[position] ? "Product Code: " +Skus[position] : "Product Code: " +Skus[1]);
});

});

</script>

并且: 应用程序/设计/前端/rwd/default/template/catalog/product/view/view.phtml

<div id="productcode"></div>

目前,动态 sku 显示第一个 sku 记录,直到选择所有选项,然后显示正确的选项。如何在选择所有选项之前隐藏 sku,或者在有人返回编辑其选择时隐藏它?

提前致谢!

最佳答案

如果您注释(或删除)以下行,它不会在 div onload 中放置任何内容:

$j("#productcode").html("Product Code: " +Skus[1]);

当选择更改时,以下代码仍会在那里写入 SKU:

$j("select#attribute<?php echo $_attribute->getAttributeId() ?>").change(function(){
var position = $j("#attribute<?php echo $_attribute->getAttributeId() ?> option").index($j("#attribute<?php echo $_attribute->getAttributeId() ?> option:selected"));

$j("#productcode").html(Skus[position] ? "Product Code: " +Skus[position] : "Product Code: " +Skus[1]);
});

希望有帮助。

关于javascript - Magento 显示可配置产品的动态 SKU...选择所有选项后才显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31013423/

相关文章:

php - magento 自定义支付模块用于多运

javascript - 为什么 parseInt(8,3) == NaN 和 parseInt(16,3) == 1?

javascript - 将 html 元素传递给 a4j :jsFunction 的 oncomplete 函数

javascript - mailto 正文中的某些字符正在停止打开邮件窗口....javascript

php - 使用 PHP 简单 HTML DOM 解析器获取注释

php - 为什么 php 将 $_FILES 值按名称、类型而不是输入文件名的顺序分组?

magento - "Suspected Fraud"完成magento付款后的状态?

Magento 结帐步骤

javascript - 移除 Flash 对象边框

php - 用户输入未存储在数据库中