2008-11-18 2 views
1

Что я ищу выглядит в JQuery:Как выполнить JS XHR-ответы в Dojo?

jQuery.ajaxSetup({ 
    'beforeSend': function(xhr) { 
    xhr.setRequestHeader("Accept", "text/javascript"); 
    } 
}); 
... 
$("#my_form").submit({ 
    $.post($(this).attr("action", $(this).serialize(), null, "script"); 
    return false; 
}); 

Затем, когда мой сервер возвращает некоторый Javascript (Бит Accept-заголовка), JQuery выполняет его (что последний параметр «сценарий»).

Я пытаюсь получить тот же эффект в Додзе. Моя догадка:

form = dojo.byId("my_form") 
form.onsubmit = function() { 
    dojo.xhrGet({ 
    url: form.action, 
    form: form, 
    handleAs: "javascript" 
    }) 
} 

handleAs: "javascript" должно вызывать Dojo, чтобы выполнить реакцию как JS. Моя проблема заключается в том, что я не могу понять, как настроить заголовок, чтобы мой веб-сервер (блок respond_to do |format| в Rails) знал, что нужно вернуть.

ответ

0

Не уверен, что сам додзё, но я знаю, что phiggins (ведущий dojo dev) доступен на канале #dojo на freenode irc, то есть если никто другой не сможет дать вам ответ.

3

Я считаю, что ответ:

form = dojo.byId("my_form") 
    form.onsubmit = function() { 
    dojo.xhrGet({ 
    url: form.action, 
    form: form, 
    handleAs: "javascript", 
    headers: { "Accept": "text/javascript" } 
    }) 
} 
Смежные вопросы