Mi función de cambio permite a los usuarios cambiar de país a país y obtener texto y funciones diferentes. Funciona al cambiar las selecciones de país. Pero en la carga de la página inicial, no se activa el cambio de jQuery para establecer el ocultar y mostrar los div de texto para el país predeterminado/inicial.activando una función de cambio jQuery al documento listo
Ambos divs se muestran en la carga de la página inicial. Cuando me cambio y vuelvo al país predeterminado/inicial, modifico fuegos, oculto y veo fuego, y muestro la información y las características adecuadas.
He intentado document.ready
con una función de cambio dentro de las selecciones del interruptor y fuera de la función de cambio. Ninguno de los dos trabaja: no encienden el hide, el show y otros jQuery en los conmutadores en doc ready. No tengo claro si 'listo' es un evento desencadenante válido.
también he intentado:
$('input[name=country]').value('US').trigger('click');
pero se rompió la función de cambio. Aquí está el código. La selección de país a continuación es solo 2 países para mantenerlo simple, pero en realidad, hay muchos.
$(document).ready(function()
{
//1st tier - select country via radio buttons:
//Initialize country
$('input[name=country]:first').attr('checked', true); //Set first radio button (United States)
//$('input[name=country]:first').attr('checked', true).trigger('ready'); //sets 1st button, but does not fire change
//$('input[name=country]:first').trigger('click'); //sets 1st button, but does not fire change
$('input[name=country]').change(function()
{
// change user instructions to be country specific
switch ($('input[name=country]:checked').val())
{
case 'US':
$('#stateMessage1').text('2. Select a state or territory of the United States.');
$('#stateMessage2').text('Start typing a state of the United States, then click on it in the dropdown box.');
$('#threeSelects').show();
$('#twoSelects').hide();
//select via 3 steps
break;
case 'CA':
$('#stateMessage1').text('2. Select a province or territory of Canada.');
$('#stateMessage2').text('Start typing a province of Canada, then click on it in the dropdown box.');
$('#twoSelects').show();
$('#threeSelects').hide();
//select town via 2 steps - country, town
break;
}
});
});
Esto funciona. Gracias. Se repite 25 veces. ¿Hay otra forma de hacerlo que no funcione en bucle, o estoy siendo exigente ;-) Quiero que active toda la función de cambio porque cualquiera de muchos países podría ser la condición inicial, por lo que triggerHandler en el primero no lo es? . –
@Mike_Laird: si dices que solo quieres que se active para el marcado, haz lo siguiente: '.filter (': checked'). Trigger ('change');' – user113716
¡Lo has conseguido! increíble. Cambie los incendios solo una vez en la carga y una vez por cada cambio individual a partir de entonces. Mostrar, ocultar, etc. hacer sus cosas correctamente. Muchas gracias. –