2013-03-28 56 views
3

我想通過從我的基於struts的項目中的JSP請求參數中傳遞一個字符串值到JavaScript函數。這裏是代碼:想要在jsp中將java值傳遞到JavaScript函數

<% 
String timeVal = "Not found"; 
    if(request.getAttribute("myDate")!=null){  
     timeVal= (String)request.getAttribute("myDate"); 
    } 
%> 

,然後在功能上把它作爲參數

<html:submit property = "save" styleClass = "button_c" onclick = "return SubmitPage('update', <%=timeVal %>)">Save</html:submit> 

凡JavaScript函數是

function SubmitPage(action, aa) 
{ 

alert("Date is ...." + aa); 

} 

但是,當我嘗試運行此它給了我一個錯誤

HTTP Status 400 - Request[/AMResourceLibraryListAction] does not contain handler parameter named ref 

在網頁上發佈消息。

Request[/AMResourceLibraryListAction] does not contain handler parameter named ref 

在此先感謝。

編輯這裏是堆棧跟蹤

[ERROR] DispatchAction - -Request[/AMResourceLibraryListAction] does not contain handler parameter named ref 
+0

發表您的完整堆棧跟蹤這裏請。堆棧跟蹤包含拋出異常的**原因**。 –

+1

@BuhakeSindi添加了,但它沒有顯示堆棧跟蹤的詳細信息:( – NoNaMe

+0

你看過什麼值通過看到viewsource? –

回答

3

它的工作對我來說:

<html:submit property = "save" styleClass = "button_c" onclick = "return SubmitPage('<%=timeVal %>')">Save</html:submit> 

( '<%=的timeval%>')//之間的單引號

+0

這種方式避免異常,但採取<%=timeVal %>作爲字符串不可變 – NoNaMe

+0

在這個問題'timeVal'是** String **,如果不是,可以轉換? – mehdi

+0

timeVal是一個變量具有vari的String類型能夠值...我從一個servlet獲得.... – NoNaMe

0

使用「<%=timeVal %>」,而不是<%=timeVal %> Javascript方法:

<html:submit property = "save" styleClass = "button_c" onclick = "return SubmitPage('update', '<%=timeVal %>')">Save</html:submit> 
+0

這樣避免了異常,但是將<%=timeVal %>作爲字符串不可變 – NoNaMe

3

而使用,我會建議你在使用值這樣的JavaScript函數

var tt = <%=(String)request.getAttribute("myDate")%> 
alert(tt+ "Done this...."); 

希望這會幫助你。

+0

這是工作,謝謝你的回答 –