javascript - 我如何在 scriplet 中使用 javascript var

标签 javascript java jsp

我正在努力学习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,所以我的答案将使用它,但可以随意修改它以使用 native JS 代码。首先,我会在服务器上创建一个名为 createJsonObject 的页面,使用 $.ajax (type: "POST") 从客户端调用它,并将我的参数作为对象

{varID: varID}

在服务器上,我会将 JSP 放置在该页面上,在页面加载时读取参数,执行函数并将带有数据的对象返回给客户端。在 .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>

Ajax 帖子:

$("#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;
?>

我还没有测试过这个,所以可能有地方出错了。但是尝试像我的例子一样,然后询问您是否需要任何帮助。

关于javascript - 我如何在 scriplet 中使用 javascript var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31648176/

相关文章:

javascript - 如何从两个不同的 JS 文件中获取具有相同名称的变量的每个值?

java - 无法将 Java Spring webapp 部署到 Tomcat

java - 如何在没有 <form> 元素的情况下将参数从 JSP 页面发送到 Servlet

javascript - JSP Json ArrayList 到 JavaScript 列表

java - 调用ServletOutputStream后转发到JSP

javascript - TableTools 示例的基本用法不起作用

javascript - jQuery 变量范围

javascript - 在 vue 和 addEventListener 中与数据或方法通信

java - Oozie > Java 操作 > 为什么属性 oozie.launcher.mapred.child.java.opts 不起作用

Java MS Word 和 PDF 转换为图像 (png/jpg)