栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

调用Servlet并从JavaScript和参数中调用Java代码

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

调用Servlet并从JavaScript和参数中调用Java代码

几种方法:

  1. 使用
    window.location
    火的GET请求。请注意,它是同步的(因此客户端将看到当前页面正在更改)。
    window.location = "http://example.com/servlet?key=" + enpreURIComponent(key);

请注意,内置

enpreURIComponent()
函数在传递请求参数之前对其进行编码的重要性。

  1. form.submit()
    火GET或POST请求。需要注意的是它是同步的。
    document.formname.key.value = key;

    document.formname.submit();

    <form name="formname" action="servlet" method="post">    <input type="hidden" name="key"></form>

或者,您也只能设置现有表单的隐藏字段,然后等待用户提交它。

  1. 用于
    XMLHttpRequest#send()
    在后台触发异步请求(也称为Ajax)。下面的示例将调用servlet
    doGet()
    var xhr = new XMLHttpRequest();

    xhr.open(“GET”, "http://example.com/servlet?key=” + enpreURIComponent(key));
    xhr.send(null);

下面的示例将调用servlet

doPost()

    var xhr = new XMLHttpRequest();xhr.open("POST", "http://example.com/servlet");xhr.setRequestHeader("Content-Type", "application/x-www-form-urlenpred");xhr.send("key=" + enpreURIComponent(key));
  1. 使用jQuery发送跨
    xhr
    浏览器兼容的Ajax请求(以上代码仅在实际的浏览器中有效,为了实现MSIE兼容性,您将需要增加一些混乱;))。
    $.get("http://example.com/servlet", { "key": key });$.post("http://example.com/servlet", { "key": key });

请注意,jQuery本身已经透明地对请求参数进行了编码,因此您

enpreURIComponent()
在这里不需要。

无论哪种方式,

key
都只能
request.getParameter("key")
在servlet中使用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/417276.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号