[英]Grails params from GSP to controller are null
我有這個按鈕:
<button id = "select"
onclick = "<g:remoteFunction controller='customer' action='selectBatch'/>"
params: '\'batchID=\' + selectedBatchID'>Select</button>
確實在我的控制器中調用此方法:
def selectBatch = {
println "Batch Selected: " + params.batchID
}
但是輸出如下:
Batch Selected: null
這是相關的javascript,它生成並准備要在params中傳遞的變量:
var table = document.getElementById('batchTble'),
rows = table.getElementsByTagName('tr');
var selectedBatchID;
for (var i=0,len=rows.length; i<len; i++){
rows[i].onclick = function(){
console.log(this.cells[0].innerHTML);
selectedBatchID = parseInt(this.cells[0].innerHTML);
console.log(selectedBatchID)
/* if you know it's going to be numeric:
console.log(parseInt(this.innerHTML),10);
*/
}
我確實確認javascript變量“ selectedBatchID”確實會打印到控制台,因此確實包含一個值。 但是,該值永遠不會由於某種原因而成為控制器獲取的參數。 這是Chrome調試控制台在控制器抱怨null的同時給我的:
17 VM3216:53
POST http://ec2-54-209-146-139.compute-1.amazonaws.com:8080/FatcaOne_0/customer/selectBatch 404 (Not Found) jquery.tools.min.js:38
send jquery.tools.min.js:38
onclick
您會看到在Chrome調試控制台中打印了值“ 17”,但從未將其作為params.batchID放入控制器中。 為什么我的參數為null卻找不到404,這是我不理解的? 任何幫助表示贊賞。 我很樂意根據要求提供更多詳細信息。
onclick
看起來不正確。 有關詳細信息,請參閱文檔 。 基於此,它應該類似於:
<button id = "select"
onclick = "${remoteFunction(controller: 'customer',
action: 'selectBatch',
params: '\'batchID=\' + selectedBatchID')}">
Select
</button>
我想您已經混合了問題中顯示的taglib和方法調用語法(參數的鍵值用法與操作和控制器的屬性)。 而且,問題中params
完全不是remoteFunction
一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.