我有一些JavaScript需要從可愛的社區的一些幫助。我正在做關於Jquery和DOJO的一些事情。如何使按鈕點擊事件來調用dojo函數?
我有兩個現有的應用程序。
應用程序使用了大量的dojo/spring UI裝飾/驗證(spring 3.1.1)。另一個是純html應用程序。
我現在在做什麼?我試圖通過使用來自HTML項目談話的Jquery/Ajax調用來將兩個項目放在一起,以便從我的Spring項目中獲取從JSP生成的一些業務邏輯頁面,並將JSP頁面注入特定的HTML頁面div(Content div)。我在這項工作上做了很多工作,並且我發現Jquery 1.9.1在Ajax和JSP注入方面表現良好。但是當我嘗試調用我現有的JSP頁面的Spring/DOJO裝飾/驗證函數時,我發現Jquery和DOJO之間存在顯着的衝突,它們根本無法共存。
從那時起,我不得不放棄Jquery,因爲我大量使用Spring/DOJO。我發現在JavaScript函數調用中DOJO與Jquery不一樣。
例如,我可以很容易引發火災從按鈕的click事件的jQuery函數爲:
JavaScript作爲:
function doSignout() {
console.log("dosignout function called.");
$.ajax({
contentType: "application/json; charset=utf-8",
url: 'doSignout',
query: ({name : "me"}),
success: function(data){
if (data=="login required."){
doAjax();
}
}
});
}
HTML爲:
<input value="Sign out" name="Sign out" id="Sign out" class="submit" type="submit" onClick="doSignout()" />
但我發現在道場,沒有辦法做同樣的事情。
任何意見將不勝感激。
Cidy來自澳大利亞
這部分是爲我工作的, 我試過了。我的問題是我不能通過點擊一個按鈕來調用dojo函數來激發dojo函數,因爲jquery可以做到這一點。我的意思是似乎dojo功能是不聽一個DOM元素(按鈕)單擊事件。任何想法? –
根據您使用的dojo版本,您可以嘗試使用「dojo.connect」或「dojo/on」來聆聽dom事件。但這很平常,因爲您調用doSignout()函數的方式與瀏覽器默認的jQuery或dojo無關。 unles你正在做一個jQuery.click並沒有顯示它 –