我有以下代码在jsfiddle –
http://jsfiddle.net/darkajax/FHZBy/中正常工作
我已将代码转移到我需要使用代码的页面中,并为函数分配了正确的ID号,这是它应该工作的页面:
http://mtpassemblies.com/cs-cart/index.php?dispatch=products.view&product_id=29821
当用户在选项中进行选择时,应该填写部件号框,这不会在实时版本上发生,我似乎没有收到任何错误消息.由于我没有收到任何错误消息,我不确定我应该从哪里开始查看问题的来源.
在我的原始消息之后,似乎CS Cart建立在Smarty框架上,我不确定这是否与问题有关?
这是网站上的jQuery:
<script type="text/javascript">// <![CDATA[ $(function() { var sku1 = sku2 = sku3 = sku4 = sku5 = sku6 = length = ''; $("#opt_29821_746").change(function(){ switch($(this).val()){ case "3134": sku1 = 'TB'; break; case "3135": sku1 = 'LT'; break; case "3154": sku1 = 'LTR'; break; case "3136": sku1 = 'BO'; break; case "3138": sku1 = 'MC'; break; case "3139": sku1 = 'NC'; break; case "3183": sku1 = 'STA'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $("#opt_29821_742").change(function(){ switch($(this).val()){ case "3111": sku2 = 'LC'; break; case "3110": sku2 ='LCA'; break; case "3112": sku2 ='E2000'; break; case "3113": sku2 ='E2A'; break; case "3114": sku2 ='FC'; break; case "3115": sku2 ='FCA'; break; case "3116": sku2 ='ST'; break; case "3117": sku2 ='SC'; break; case "3118": sku2 ='SCA'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $("#opt_29821_744").change(function(){ switch($(this).val()){ case "3175": sku3 = '2'; break; case "3121": sku3 ='4'; break; case "3122": sku3 ='6'; break; case "3123": sku3 ='8'; break; case "3124": sku3 ='12'; break; case "3125": sku3 ='16'; break; case "3126": sku3 ='24'; break; case "3176": sku3 ='48'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $("#opt_29821_745").change(function(){ switch($(this).val()){ case "3127": sku4 = 'OS12'; break; case "3182": sku4 ='G657A1'; break; case "3128": sku4 ='OM1'; break; case "3129": sku4 ='OM2'; break; case "3130": sku4 ='OM3'; break; case "3131": sku4 ='OM4'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $("#opt_29821_748").change(function(){ switch($(this).val()){ case "3142": sku5 = 'LC'; break; case "3143": sku5 ='LCA'; break; case "3144": sku5 ='E2000'; break; case "3145": sku5 ='E2A'; break; case "3146": sku5 ='FC'; break; case "3147": sku5 ='FCA'; break; case "3148": sku5 ='ST'; break; case "3149": sku5 ='SC'; break; case "3150": sku5 ='SCA'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $("#opt_29821_749").change(function(){ switch($(this).val()){ case "3151": sku5 = 'LZSH'; break; case "3177": sku5 ='PE'; break; } $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); $('#opt_29821_753').change(function(){ length = $(this).val(); $('#option_29821_798').val(sku1+sku2+sku3+sku4+sku5+sku6+length); }); }); // ]]></script>
UPDATE
在进一步调查并与各种人交谈之后,似乎问题是由于内置的onchange事件导致CS Cart与我编写的jQuery冲突.
解决方法
.change事件将仅针对静态内容触发.在你的情况下你应该使用jQuery的.on()事件,如:
$("#opt_29821_745").on('change',function() { ....
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。