Skip to content Skip to sidebar Skip to footer

Jquery/javascript: Arrays

I am a begginer with Javascript/jQuery and I hope someone can help me with the following: I have a simple form (7 questions; 3 radio buttons/answers per question - except for quest

Solution 1:

Rather than test for equality, I think the better means is to check whether or not each of your values are in the array using the jQuery inArray function.

Granted, this is just the beginning of code. You could probably write a function to shore this up, like so.

function radioSelected(val) {
  return ($.inArray(val, laArray) != -1);
}

and adapt it to your existing script.


Solution 2:

You cannot compare arrays this way you should probably either compare each element of the 2 arrays

function compare_array(array1,array2) {
    var i;
    for(i=0;i=array1.length;i++) {
        if(array1[i]==array2[i]) {
            return false;
        }
    }
    return true;
}

or serialize the array in a comparable form ( comma separated string for example )

function compare_array(array1,array2) {
     return array1.join(",")==array2.join(",");
}

Solution 3:

Would be nice to see the HTML code. But I guess you want to do something like this:


var laArray = [];
var compareValues = function(arr1, arr2) {
  $(arr1).each(function(index, el) {
   if(el !== arr2[index]) {
     return false;
   }
  });
  return true;
};

$('.button-show-advice').click(function(){
    $(":radio:checked").each(function(i){
        laArray.push($(this).val());        
    });
   if(compareValues(laArray,["a","d","g","j","m","u"])) {
      $("#advice-container, #advice1, #advice2").show();
   }  
});

EDIT: updated the code, forgot the }); ...


Post a Comment for "Jquery/javascript: Arrays"