Question

J'ai un peu de simples créé avec xajax, qui remplace le innner HTML d'une commande de sélection avec certaines options créées par un script php.

Ceci est bien beau dans Firefox, mais il ne fonctionne pas dans IE7.

Recherche sur les forums xajax i cette qui dit essentiellement "ne marche pas vraiment travailler dans IE, utilisez un div et remplacer le HTML intérieur de cela avec l'instruction select complète "

Est-ce que cela, et il est très bien, sauf que j'avais un sélecteur jQuery travaillant sur la commande de sélection, qui maintenant ne fonctionne plus.

Tout le monde a des idées, ou quelqu'un peut me pointer vers un bon exemple de jQuery comment faire le bit ajax en utilisant jQuery, donc je peux le fossé xajax tout à fait?


EDIT:

<div id=imgselect>
  <select id="images">
   <option value="">Then select an image</option>
  </select>
</div>


Picture Preview:<br><br>

 <div class="img-preview" id='preview'></div>
 <script type='text/javascript'>
   $('#images').change(function() 
   {
     var image = $(this).val();
     var img = $('<img/>').attr('src', image);
    $('#preview').html(img);

    document.getElementById('picsmall').value = image;
    });
</script>

Le problème vient quand le contenu du imgselect est remplacé par div l'appel AJAX

Était-ce utile?

La solution

Ceci est maintenant résolu en utilisant la balise

$objResponse->script
commande

Par souci d'exhaustivité et si quelqu'un veut voir à l'avenir, j'ai la page d'origine mis en place comme ci-dessus:

<div id=imgselect>
  <select id="images">
    <option value="">Then select an image</option>
  </select>
</div>

puis dans mon fichier php xajax je

function getphotos()
{
    $objResponse = new xajaxResponse();
        //this include assigns all the options to the select controll into the $output var
    include "photos.photosselect.php";
    $objResponse->assign("imgselect", "innerHTML", "$output");
    $objResponse->script("$('#images').change(function() {var image = $(this).val(); var img = $('<img/>').attr('src', image); $('#preview').html(img); document.getElementById('picsmall').value = image;});");
    return $objResponse;
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top