2012-03-27 12 views
0

Ich habe ein Problem, aber ich konnte es nicht lösen.

mein code arbeitet auf firefox perfekt.

Ich habe zwei Listenfelder: das erste enthält Länder, das zweite enthält Städte. Wenn Sie das Land wechseln, wird die Liste der Städte im zweiten Listenfeld angezeigt.

meine jQuery-Code:

$('#country').change(function(){ 

var sec=$('#country').val(); 

    $.post(
      'select.php?do=country', 
      {s:sec}, 
      function(answer){ 
       $('#city').html(answer); 
      } 
    ); 

}); 

wenn ich geschieht in google chrome nichts geändert.

danke.

Antwort

4

Ist der gesamte Code in eine $(document).ready()-Methode verpackt?

Chrome analysiert schneller als ffox und daher kann die Bindung der change-Funktion stattfinden, bevor das DOM bereit ist. Ohne eine DOM ready-Funktion zu verwenden, wird das Element mit der ID country möglicherweise nicht vom Browser gerendert.

$(function() { 
// or $(document).ready(function() { 
    $('#country').change(function(){ 

    var sec=$('#country').val(); 

    $.post(
      'select.php?do=country', 
      {s:sec}, 
      function(answer){ 
       $('#city').html(answer); 
      } 
    ); 

    }); 

});

+0

Ich habe dies in jfiddle versucht. Wenn Sie 'no wrap (head)' verwenden, funktioniert es weder in FF noch in chrome. Wenn Sie 'no wrap (body)' verwenden, funktioniert es in beiden ... http://jsfiddle.net/KpdXL/1/. Es ist schwer zu sagen, ohne den eigentlichen Code von OP zu haben, mit dem man sich messen und wissen kann, welche Versionen von Chrome/FF verwendet werden. – mellamokb

+0

ja es ist von $ (Dokument) umwickelt .ready() aber es gibt zu viele Funktionen vor .change. Ich habe sie jetzt gereinigt. ty. – bayburt

+0

@bayburt: Wo bekommen Sie vorher Fehler? Sie können über die Konsole in Chrome nach Fehlern suchen ('STRG + UMSCHALT + J'). – mellamokb

0

Zusätzlich zum Einbinden des Codes in eine "onload-Funktion" können Sie die js am Ende der Datei platzieren, dies wird aus Gründen der Seitenperformance empfohlen und analysiert das Skript ebenfalls korrekt.

Verwandte Themen