seanbeansea: Farbe ändern funkitoniert nicht, wenn Ajax aktiv

Hallo,

ich möchte anzeigen, wenn Ajax im Hintergrund arbeitet. Es soll dann die Farbe eines divs geändert werden. Ich verwende DOJO und starte mit der Methode dojo.io.bind den asynchrone Zugriff auf den Server. Leider geht das Wechseln der Farbe nicht...

  • nur Farbe ändern geht (ohne AJAX)
  • dojo.io.bind (AJAX) funkitoniert alleine (ohne Farbwechsel)
  • auch mit einem Timer wird die Farbe nicht in Rot geändert
  • das gleiche Problem habe ich mit animierten Gifs

Beispiel:
-> function helloPressed wird aufgerufen, dann soll Frabe nach rot wechseln, dann AJAX, dann Farbe grün wieder

function startGif() {
    document.getElementById("status").style.backgroundColor = “red";
  }

function stopGif() {
    document.getElementById("status").style.backgroundColor = "green";
  }

function ajaxBind() {
   dojo.io.bind({
   url: 'hello.jsp',
   handler: helloCallback,
   content: {name: dojo.byId('name').value }
   });
  }

// Button
  function helloPressed()
    {
    startGif();
    ajaxBind();
    stopGif();
    }

</script>
</head>

<body>
<div id="status" style="background-color:green">&nbsp;tester12345</div>

<h:form>
  <h:outputText value="Send request to server and getting response" styleClass="title" />
  <br />
  Please enter your name: <input type="text" id="name">
  <button dojoType="Button" widgetId="helloButton">Name an Server senden!</button>
  <br />
</h:form>

...

Irgendwelche Ideen?
Danke im Voraus,
seanbeansea

  1. Beispiel:
    -> function helloPressed wird aufgerufen, dann soll Frabe nach rot wechseln, dann AJAX, dann Farbe grün wieder

    function startGif() {
        document.getElementById("status").style.backgroundColor = “red";
      }

    function stopGif() {
        document.getElementById("status").style.backgroundColor = "green";
      }

    function ajaxBind() {
       dojo.io.bind({
       url: 'hello.jsp',
       handler: helloCallback,
       content: {name: dojo.byId('name').value }
       });
      }

    // Button
      function helloPressed()
        {
        startGif();
        ajaxBind();
        stopGif();

    kommentiere das mal aus, dann sollte die Farbe nach Rot wechseln, den Wechsel auf Grün musst du in die Funktion helloCallback packen.

    Struppi.

    --
    Javascript ist toll (Perl auch!)