[英]how can i use javascript var in scriplets
我正在嘗試學習jsp。 我對Java有一點了解,而對html標簽了解不多,所以我會盡可能簡單地使用Java代碼。 我要在那里做的是從文本框中的變量獲取數據並將其用作字符串。
var text1 =<% request.getParameter("locationId"); %>;
<%
if ((text1 != null && text2 != null) && (!text1.equals("") && !text2.equals(""))) {
kw1 = "'%"+text1+"%'";
kw2 = "'%"+text2+"%'";
.
.
.
}
%>
在將有關網頁的任何數據從服務器發送到客戶端之前,將執行Scriptlet。 無論您想做什么,都需要將回發發送到服務器(使用表單或ajax調用)。 我通常使用jQuery,因此我的答案將使用它,但可以隨時對其進行修改以使用本機JS代碼。 首先,我將在服務器上創建一個名為createJsonObject
類的createJsonObject
,使用$.ajax (type: "POST")
從客戶端調用它,並將參數作為對象傳遞
{varID: varID}
在服務器上,我將JSP放置在該頁面上,在頁面加載時讀取argumant,執行函數並將帶有數據的對象返回給客戶端。 在.done()
我將對該數據進行一些處理(以表格形式顯示它們,將其保存在JS變量中...)。
希望這可以幫助你。
示例(僅顯示如何將Ajax與表單示例一起使用)
HTML形式:
<form name="formName" method="post" action="">
<input type="text" name="name" id="firstName" value="" />
<input type="text" name="lastName" id="lastName" value="" />
<input type="submit" name="Update" id="update" value="Update" />
</form>
阿賈克斯郵報:
$("#update").click(function(e)
{
e.preventDefault();
var firstName = $("#firstName").val();
var lastName = $("#lastName").val();
var dataObject = {};
dataObject.firstName = firstName;
dataObject.lastName = lastName;
$.ajax({
type:'POST',
data:dataObject,
url:'returnData.php',
success:function(data)
{
alert(data);
}
});
});
PHP:
<?php
$receivedObject = json_decode($_POST['data'], true);
$name = $receivedObject['firstName'];
$lastName = $receivedObject['lastName'];
echo $name . ' ' . $lastName;
?>
我尚未對此進行測試,因此可能存在我出錯的地方。 但是嘗試類似我的示例的方法,然后問是否需要任何幫助。
阿里,您不能在jsp scriplate中使用javascript變量。
<%
String locationId=request.getParameter("locationId");
if ((text1 != null && text2 != null) && (!text1.equals("") && !text2.equals(""))) {
kw1 = "'%"+text1+"%'";
kw2 = "'%"+text2+"%'";
.
.
.
}
%>
但是反之亦然,您可以在JavaScript代碼中使用JSP變量。
<script>
var locationId='<%=request.getParameter("locationId")%>';
alert(locationId);
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.