ok, good message - in this case ajax POSTs NAN value of MyExtraGender.
it means that parameter MyExtraGender is undefined.
for the start I would recommend you to use directly MyExtraGender value + javascript DEBUG - of course
(srry for another form of data, but it is more readable for me than querystring)
// add a product in the cart via ajax
add : function(idProduct, idCombination, addedFromProductPage, callerElement, quantity, whishlist, MyExtraGender){
...
...
...
data={};
data['controller']='cart';
data['add']=1;
data['ajax']=true;
data['qty']= ((quantity && quantity != null) ? quantity : '1');
data['id_product']= idProduct;
data['token']= static_token;
if (parseInt(idCombination) && idCombination != null) {
data['ipa']= parseInt(idCombination): '';
}
data['id_customization']=customizationId : 0;
data['MyExtraGender']=$('input[name="MyExtraGender"]').val();
...
$.ajax({
type: 'POST',
headers: { "cache-control": "no-cache" },
url: baseUri + '?rand=' + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: data,
...
...
...
});
},