1) No sabía que un checkbox tuviera texto que recuperar por .text(), lo normal es recuperar su value por .val() y cualquier otro atributo por .attr(atributo).
2) Cualquier propiedad de índole de recuperación de valor de elemento sólo lo realiza para el primer elemento del conjunto devuelto por el selector
Cita: Get the current value of the first element in the set of matched elements.
Eso significa que tendrás que, primero, almacenar los elementos en un array y luego hacer un bucle que almacene los valores en otra array
var typesToSearch = $('#cmbSearchOptions').find(":selected");
typesToSearchtext = [];
$.each(typesToSearch, function(i,e){
typesToSearchText[i] = $(e).val();
})
var options = {
location: currentLocation,
radius: '500',
types: typesToSearchText
};
3) Una segunda forma alternativa, por si te interesa, es hacer el bucle sobre el conjunto. Es lo mismo que lo anterior, pero simplificado.
$('#cmbSearchOptions').find(":selected").each(func tion(i,e){
typesToSearchText[i] = $(e).val();
})
Un saludo