我想这样做:
select的值改变后获取他,并传递给java方法里的变量
获取select值,据我所知,js很容易做到,但是这里我想知道怎么在java方法中调用这个获取的值,或者哪位知道另外的方法,提供点思路,谢谢
select的值改变后获取他,并传递给java方法里的变量
获取select值,据我所知,js很容易做到,但是这里我想知道怎么在java方法中调用这个获取的值,或者哪位知道另外的方法,提供点思路,谢谢
解决方案 »
- 请问jsp网页如何做这种提示
- 调用次数怎么算?(关于google map Api调用超过次数收费的问题)
- Jcrop 图片剪切 出错
- 关于网页中使用框架问题
- 请高手帮忙看看,我哪里错了,关于JAVA用axis调用WebService的问题。
- 使用浏览器的关闭窗口触发事件?
- 一个Log4j的DailyRollingFileAppender每日保存的问题
- 以下是个发mail的JSP,很简单,但是报错,请指点,谢谢
- ?????如何配置servlet属性
- spring jta只能执行查询,不能执行增删改
- hibernate+spring save的时候为什么报nested exception is org.hibernate.MappingException:
- java rar解压缩中文路径问题
对 这个ajax怎么写呢?
然后在servlet里面用getParameter("name");就能取到这个select框的值!!
pageEncoding="UTF-8"%><%@ page import="com.jasper.dao.*"%>
<%@ page import="java.util.*"%>
<%@ page import="org.springframework.context.*"%>
<%@page import="org.springframework.context.support.*;"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" />
<script type="text/javascript" src="js/common.js"></script>
</head>
<script type="text/javascript">var xmlHttp;
function init() {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
try {
xmlHttp = new XMLHttpRequest();
}
catch (e) {
}
}
}
}
function getField(name) { init();
var url = "getFieldValue?pfield=" + name;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = handleCheckFieldValue;
xmlHttp.send(null);
}
function handleCheckFieldValue() { if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var root = xmlHttp.responseXML.documentElement;
var res = root.getElementsByTagName("select");
var sel = document.getElementById("city");
if(sel!=null){//如果不为空就置空
sel.options.length=0;
}
for (var i = 0; i < res.length; i++) {
var svalue = res[i].childNodes[0].firstChild.nodeValue;
var stext = res[i].childNodes[1].firstChild.nodeValue;
var option = new Option(stext, svalue);
sel.add(option);
}
}
}
}
</script>
<body>
<br>
<br>
<hr size="1" />
<div id="addDiv">
<div id="row1">
<a onclick='addRow()'>+</a>
<a onclick='delRow()'>-</a>
<br>
<form id="form" name="form" method="post" action="control">
<table width="600" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td> <select id="field" style="width: 100px"
onchange='getField(this.value)'>
<option value="0" selected="selected">
--请选择--
</option>
<%
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
FieldDAO fielddao = (FieldDAO) ctx.getBean("FieldDAO"); List fieldlist = fielddao.findAll(); Iterator fieldIt = fieldlist.iterator();
while (fieldIt.hasNext()) { Field field = (Field) fieldIt.next();
out.println(" <option value='" + field.getName() + "'> " + field.getContent() + " </option> ");
}
%>
</select>
</td> <td>
<script type="text/javascript">
</script>
<select id="city" name="city" style="width: 100px">
<option value="0" selected="selected">
--请选择--
</option> </select>
</td>
<td>
<input type="submit" value="提交" />
</td>
</tr>
</table>
</form>
</div>
</div>
</body>
</html>下面是servlet的:
package com.jasper.service;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class getFieldValue extends HttpServlet { @Override
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
// TODO Auto-generated method stub
res.setContentType("text/xml;charset=gb2312");
res.setHeader("Cache-Control", "no-cache"); String str = req.getParameter("pfield");
Connection conn = null;
Statement state = null;
ResultSet rs = null;
String url = null;
String className = null; url = "jdbc:mysql://localhost:3306/ireport";
className = "com.mysql.jdbc.Driver";
String xml_start = "<selects>";
String xml_end = "</selects>";
String xml = ""; xml = "<select><value>0</value><text>--请选择--</text></select>"; try { Class.forName(className); conn = DriverManager.getConnection(url, "root", "root");
state = conn.createStatement(); rs = state.executeQuery("select " + str + " from assets"); while (rs.next()) { xml += "<select><value>" + rs.getString(1) + "</value><text>" + rs.getString(1) + "</text></select>"; System.out.println(xml);
} } catch (Exception e) { e.printStackTrace();
} String last_xml = "<?xml version='1.0' encoding='GB2312'?>" + xml_start + xml + xml_end;
res.getWriter().write(last_xml); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> 动态增加行demo </title>
<script type="text/javascript">
//增加一行
function addRow(){
var rownum=document.getElementsByTagName("div").length;
var divHtml="<div id='row"+rownum+"'><select id='cloum'><option value='author'>作者</option><option value='time'>时间</option><input type='text' id='textfield'></select> </div>";
document.getElementById("addDiv").innerHTML+=divHtml;
}
//删除一行
function delRow(){
var index=document.getElementsByTagName("div").length-1;
if(index>1){
document.getElementById("row"+index).removeNode(true);
}
}
</script>
</head> <body>
<div id="addDiv">
<div id="row1"><a onclick='addRow()'>+</a> <a onclick='delRow()'>-</a><br>
<select name="cloum" id="cloum">
<option value="author">作者</option>
<option value="time">时间</option>
</select>
<input type='text' name='textfield' id='textfield'>
</div>
</div>
</body>
</html>