2012-06-14 25 views
5

thể trùng lặp:
pass parameter in g:remoteLink as result of javascript functionđèo Javascript Biến thành grails RemoteFunction

Tôi cố gắng để gọi một cuộc gọi remoteFunction được kích hoạt bởi một onclick cho một nút, nhưng nhấp chuột không gọi hàm. Tôi đã kiểm tra lệnh onlick với một khởi đầu cảnh báo và chức năng được gọi. đây là mã của tôi.

<input type="button" onclick="exportList()" value= "Export"/> 

function exportList(){ 

      var profile= document.getElementById('dropdown').value 
      ${remoteFunction(controller: 'profile' , action:'export', params: "'profile=' + profile")} 


} 

Khi tôi lấy tham số và cấu hình var, hàm STILL không được gọi ... Tôi không biết tại sao tôi gặp phải lỗi này. Cảm ơn trước nếu bạn có thể giúp!

+0

cùng với http://stackoverflow.com/questions/10023672/pass-parameter-in-gremotelink-as-result-of-javascript-function –

Trả lời

3

JoeCortopassi là đúng - bạn không thể chỉ cần sử dụng grails xây dựng của ${remoteFunction...} trực tiếp trong javascript. Tôi đã làm điều này sử dụng jQuery như thế này:

function exportList() { 
    var profileToUse = document.getElementById('dropdown').value 
    jQuery.ajax({ 
     url: "/youApp/profile/export", 
     type: "POST", 
     data: {profile: profileToUse} 
    }); 
} 
+0

Đây là câu trả lời đúng. với Grails, cảm ơn @Kelly – JoeCortopassi

2

Tôi không biết điều này là phải làm, nhưng có vẻ kém hình thành

${remoteFunction(controller: 'profile' , action:'export', params: "'profile=' + profile")} 

bạn có chắc bạn muốn nói var{remoteFunction()}? Nguyên nhân $ chỉ là một biến. Làm cho ít ý nghĩa hơn nếu bạn đang sử dụng jQuery. Ngoài ra, những gì bạn đang đi qua remoteFunction() vẻ như nó đã được coi là đối tượng, nhưng không được bọc trong {}

+0

nó có không ảnh hưởng đến –

+0

được chỉnh sửa cho một ý tưởng khác @daniellanger – JoeCortopassi

+0

Tôi không hiểu bạn đang đề xuất gì –

Các vấn đề liên quan