Start Building Professional
Web Apps Today


 
Categories Question details Back To List
Question  posted on Nov 08, 2009 01:06
open dhtmlx forum
dhtmlcombo box

The combo script does not pass the attribute when an item is added to the cart.

Here is the link to test: http://store.glittergaloreandmore.com/merchant2/merchant.mvc?Screen=PRD2&Store_Code=G&Product_Code=Glitter_Stars_Jars

To test select any color stars and add it then select shopping bag. The color that was selected is not added.

Please help!
Answer posted by Stanislav (support) on Nov 09, 2009 05:03
Please try to update existing dhtmlxcombo.js with attached one
( default version doesn't work good with field names, which are contain a brackets ) 
Attachments (1)
Answer posted on Nov 09, 2009 09:09
I've updated the new dhtmlxcombo file but the option value is still not being added. 

Some how the script is interfering with or not passing the option value when it is used.

Here is an example of the product page without the script and everything works fine. http://store.glittergaloreandmore.com/Glitter_Stars_Jars-p-Face_and_Body_Glitter.html

Any other suggestions would be greatly appreciated?

Answer posted by Joe on Nov 11, 2009 15:46
I did not get a reply for the last answer.

I just discovered that the updated file causes an error in I.E.8. It displays an error sign and reads: Done, but with errors on page.

When you click it it displays:
' dhtmlx' is undefined
Code: 0     Line; 1328  Char: 2

I replaced it with the previous version to prevent the error from display.

Please help!
Answer posted by Alex (support) on Nov 12, 2009 08:52

>> I've updated the new dhtmlxcombo file but the option value is still not being added. 

combo creates the hidden inputs with the same names as select name - it allows to submit selected value.   

But the format of  names, that you use, isn't supported. Please, have a look at the example with form on our website:

http://www.dhtmlx.com/docs/products/dhtmlxCombo/samples/02_actions/03_combo_save.html

>> When you click it it displays:' dhtmlx' is undefined

probably you use some old version of the dhtmlxcommon.js. Please, try to use the latest one. It can be downloaded with combo package from our website.

Answer posted by Joe on Nov 12, 2009 17:21
I've updated all of the files to the latest version and then updated the dhtmlxcombo.js from your previous post. Everything displays correctly, except that the option does not get added when I add the product. I want the user to be able to select the color (option) when the product gets added to the shopping bag.

>>combo creates the hidden inputs with the same names as select name - it allows to submit selected value.  
If this was the true, then the script should work. But it doesn't. Here is the original page template, without the dhtmlxxcombo: http://store.glittergaloreandmore.com/merchant2/merchant.mvc?Screen=PROD&Store_Code=G&Product_Code=Glitter_Stars_Jars . It works fine. If you select the color and add it, the option is passed to the shopping bag.

What changes when I include the combo script? I really want this to work! I think it will help my website be more user friendly.
Answer posted by Alex (support) on Nov 13, 2009 08:32

Currently combo creates the following hidden field:

<input type="hidden" name="Product_Attributes[1]:value" value="Blue"/>

So, it seems thet you didn't change the select name. Try to set name  Product instead of Product_Attributes[1]:value.

Answer posted by Joe on Nov 13, 2009 22:14
>>So, it seems thet you didn't change the select name. Try to set name  Product instead of Product_Attributes[1]:value.

This works ok when I don't use the combo. See demo: http://store.glittergaloreandmore.com/merchant2/merchant.mvc?Screen=PROD&Store_Code=G&Product_Code=Glitter_Stars_Jars

I want to add the combo to the existing template. It just doesn't work.
Answer posted by Alex (support) on Nov 16, 2009 00:51
Unfortunately combo doesn't support such a format of names 
Answer posted by Joe on Nov 17, 2009 15:19
But it is just an array of options that are created dynamically.
Answer posted by Alex (support) on Nov 18, 2009 05:00

In this case you try to get combo value manually and put into some hidden field for submitting:

<input type="hidden" id="comboValue" name="comboValue"/>...

<script>

...

combo.attachEvent("onChange",function(){

document.getElementById("comboValue").value = combo.getActualValue();

})

</script>