2013-10-15 11 views
7

Tôi đang sử dụng x-editable để điền danh sách chọn trong cửa sổ bật lên. Bây giờ tôi muốn gửi chìa khóa của tôi đến máy chủ, mã của tôi là một cái gì đó như thếGửi thông số tùy chỉnh trong x-có thể chỉnh sửa

<a href="#" id="status" data-type="select" data-pk="1" data-url="${g.createLink(controller: 'someController', action: 'someAction')}" data-title="Select CV" class="btn btn-primary"> 
    <image src="${resource(dir: 'images/template', file: 'logo11.png')}"/> ${session.someList?.size()} CV(s) Created 
</a> 
<script> 
    $(function() { 
     $('#status').editable({ 
      value: 1, 
      source: [ 
       <g:each in="${session.someList}" var="xyz" status="idx"> 
        {value: ${xyz?.id}, text: "${xyz.title}",  srsSelected:     ${xyz.id}, updateXyz: "updateXyz"}, 
       </g:each> 
      ] 
     }); 
    }); 
</script> 

Tôi muốn gửi chìa khóa srsSelected tôi đến máy chủ, tôi đã google nhưng không nhận được điểm ...

Sửa :

Bây giờ tôi có thể gửi chìa khóa của tôi đến máy chủ (sau khi nghiên cứu dài) sử dụng

params: function (params) { //params already contain `name`, `value` and `pk` 
    var data = {}; 
    data['cvSelected'] = params.pk; 
    return data; 
} 

do đó đang được cập nhật của tôi là:

<a href="#" id="status" data-type="select" data-pk="1" data-url="${g.createLink(controller: 'someController', action: 'someAction')}" data-title="Select CV" class="btn btn-primary"> 
    <image src="${resource(dir: 'images/template', file: 'logo11.png')}"/> 
       ${session.someList?.size()} CV(s) Created 
</a> 
<script> 
    $(function() { 
     $('#status').editable({ 
      value: 1, 
      source: [ 
       <g:each in="${session.someList}" var="xyz" status="idx"> 
        {value: ${xyz?.id}, text: "${xyz.title}", srsSelected:  ${xyz.id}, updateXyz: "updateXyz"}, 
       </g:each> 
      ], 
      params: function (params) { //params already contain `name`, `value` and `pk` 
       var data = {}; 
       data['srsSelected'] = params.pk; 
       return data; 
      } 
     }); 
    }); 
</script> 

tôi có thể gửi giá trị của pk trong srsSelected chìa khóa nhưng lần này tôi cần phải thiết lập giá trị của srsSelected động.

Trả lời

11

Và Bây giờ tôi thấy phương pháp để thiết lập giá trị của srsSelected động như

params: function (params) { 
    params.srsSelected = params.pk    
    return params; 
} 

và thiết lập giá trị của data-pk thuộc tính trong thẻ neo năng động, chúng tôi có thể nhận được srsSelected tại controller action.

+1

Làm việc cho tôi bằng cách sử dụng jQuery để lấy tham số tôi muốn: param.param_name: $ (this) .attr ('data-param'); trong đó 'data-param' là giá trị nội tuyến mà tôi muốn. –

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