dropdownlist选择项目从javascript到servlet

时间:2010-03-23 15:07:22

标签: javascript servlets

是否可以从JavaScript变量中获取值并在Java Servlet中使用此值?我已经阅读了这篇文章,但我发现只是通过表单提交获得JavaScript值。

我需要的是:

  • 我有一个html选择组合框。
  • 我需要从中提取所选值并使用此值 查询数据库。

这可能吗?

2 个答案:

答案 0 :(得分:1)

嗯,JavaScript在客户端上运行,servlet在您的服务器上运行。所以你需要以某种方式将值发送到你的服务器。这两种(典型)方法是使用表单提交,或Ajax。由于您提到的值来自一个选择框,我假设您希望在用户更改选择时更新页面上的内容,使用Ajax可能就是您想要的。

除非更新所需的数据量非常大,可能经常更改,或者您的目标客户端在带宽或计算能力方面确实受到限制(如移动设备),否则您可能还会嵌入页面上所需的所有数据,根据选择隐藏和显示数据,而无需使用服务器调用。如果在您的方案中可以实现这一点,那么与使用Ajax相比,它更有可能感觉快速且响应迅速。

答案 1 :(得分:0)

您可以使用AJAX请求将客户端值发布到服务器。由于跨浏览器问题,AJAX是一个没有任何JavaScript库的痛苦,这个例子使用了流行的jQuery库。

HTML:

<form id="example-form" action="/path/to/servlet" method="post">
    <select> .... </select>
    <div class="result"> The result from server is displayed here. </div>
</form>

使用Javascript:

$(function() {
    var f = $('#example-form');
    $('select', f).change(function() {
        $('.result', f).html('Wait...').load(f.attr('action'), f.serialize());
    });
});