javascript的function中的传值

在jsp页面javascript的function中的值如何传入本页面java代码中作为sql的查询条件

有多种方式。1.function函数返回该值,2.外部定义一个全局变量,将需要的值赋值给该全局变量。3.在函数中写到页面某个隐藏域中。 采用任意一种方式之后,通过get或者post请求将该参数传递到后台即可。

这不能实现的吧。 既然要查询为什么不知道直接提交数据到后台的action里面获取参数去执行呢?

如果需要在页面的java 代码中获取js值,也是可以的。java代码本身就能够调用js函数。详见http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=20731447&id=1883655

一般的做法可能是,把JavaScript函数的结果放到表单(<form>元素)中的一个表单元素(如:<input type="text" ...>、<input type="hidden" ...>、<input type="checkbox" ...>、<input type="radio" ...>等)的value属性中,然后提交这个表单到当前JSP页面对应的Action类的URL上。

也可以通过AJAX(如调用jQuery.ajax()方法)或者直接访问URL(把函数结果作为URL的查询字符串传递)的方式来达到同样的效果。

如果你是在页面点击什么按钮,然后调用一个js的function,这时想让传入java中去取值,那是不可能的。显示页面时,java代码已执行完,java代码是后台代码。

最常用的是通过ajax传值,以jQuery ajax为例
$.ajax({

type:'post',

url:url,

data:{
id:$("#id").val()
},

dataType:'json',
error:function(){

alert('error');

},

success:function(data){
alert('success');

}

});

var param=$("id").val();
$.post(url,param,function(){

});

 function search(){
window.location='xxxxx.jsp?kw='+document.getElementById('text').value
}

2种方式:
一般js请求后台都是用ajax。
方式一:
在ajax的url后面跟参数,如url:'/myservlet?name=111&age=12',
方式二:
在ajax的data属性中配置参数,如data{name:1111,age:12},
你自己搜下例子,然后照着写就行了。