2013-01-22 73 views
2

我正在使用百里香和春天3 mvc。 當我嘗試執行Ajax POST請求,我不明白我怎麼能顯示來自控制器的響應消息我的html頁面:在javascript中使用Thymeleaf顯示消息

這裏有一個代碼片段:

$.ajax({ 
      type: "POST", 
      url: "/settings", 
      data: "request=" + request, 
      success: function (response) { 
        $('#msg').replaceWith('<div id="msg" th:text="response"></div>'); 
      }, 
     }); 

「響應」是i18n來自控制器的消息。現在,我想用thymeleaf(th:text =「response」)顯示此消息。當然,這段代碼不起作用,因爲它認爲響應變量是一個純字符串。

問題是如何使用百里香顯示i18n響應信息。或者也許有其他一些方法來顯示i18n消息在html頁面(不使用jsp)通過js?

回答

2

只有在服務器上解析並替換Thymeleaf屬性(如th:text)。由於這個Ajax響應在瀏覽器上處理,所以th:text將不會被處理。如果「設置」已經是一個Thymeleaf分辨頁,很可能已經i18n'd,你可以簡單地這樣做:

$('#msg').html(response); 

但是,如果你是真正的尋找客戶端Thymeleaf標籤的JavaScript的處理,請考慮Thymol