Pergunta

Eu sou relativamente novo para YUI - procurar os grandes docs, eu não encontrar um método ou uma bandeira para carregar um recurso externo sincronicamente .

ou a pergunta ao contrário; para cada nó combinado eu preciso chamar um método, que insere algo no nó; com chamadas assíncronas a lembrado identificadores parecem atrapalhar.

, portanto, a necessidade de retorno de chamada para manter o

pid

quando a função é chamada, não quando o callback é executado -? Estou recebendo este direito

var platform_ids = YAHOO.util.Selector.query('.platform_id'); 

for (var i = 0; i < platform_ids.length; i++) {
    var pid = platform_ids[i].getAttribute("id");
    var sUrl = "/platform/" + pid + "/description/";
    var callback = { success: function(o) { 
        document.getElementById(pid).innerHTML =  o.responseText; }}
    var transaction = YAHOO.util.Connect.asyncRequest(
        'GET', sUrl, callback, null
    );
}

graças. MYYN

Foi útil?

Solução

Você não quer uma solicitação síncrona. A experiência do usuário pode ser terrível. Você realmente só quero passar um valor para o retorno de chamada para que ele não está contando com pid (que, como você observou, geralmente têm um valor diferente quando o retorno de chamada é chamado):

var callback = { success: function(o) 
  { 
    document.getElementById(o.argument).innerHTML =  o.responseText; 
  }, 
  argument: pid
};

Aqui, eu uso o membro argument callback para segurar o ID e de referência que na função de retorno em si, assegurando que cada callback usa a identificação correta.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top