SpringMvc的標籤又稱form標籤
第一步:導入標籤庫
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
一些常用的標籤
form標籤
<form:form action="提交地址" method="提交方式"></form:form>
文本框 (這裏的path相當於name)
<form:input path="uname"></form:input>
密碼框
<form:password path="upwd"></form:password>
單選按鈕
<form:radiobutton path="sex" value="男" label="男"></form:radiobutton>
<form:radiobutton path="sex" value="女" label="女"></form:radiobutton>
下拉框
<form:select path="city">
<form:option value="長沙"></form:option>
<form:option value="株洲"></form:option>
<form:option value="湘潭"></form:option>
</form:select>
複選框
愛好:<form:checkbox path="hobby" value="籃球" label="籃球"></form:checkbox>
<form:checkbox path="hobby" value="排球" label="排球"></form:checkbox>
<form:checkbox path="hobby" value="足球" label="足球"></form:checkbox>
<form:checkbox path="hobby" value="乒乓球" label="乒乓球"></form:checkbox><br/>
標籤的案例
控制器中的方法
@RequestMapping("testTag")
public String testTag(ModelMap modelMap){//模型集合
//創建Users對象 將users轉發到success.jsp
Users users=new Users("admin","123");//如果模型對象中的屬性有值那麼頁面對應的標籤中會顯示默認數據
users.setSex("女");
users.setCity("株洲");
users.setHobby(new String[]{"足球","排球"});
modelMap.addAttribute("users",users);
return "success";
}
success頁面上
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!--引入springmvc標籤庫-->
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form:form action="/updateUsers.action" method="post" modelAttribute="users"><!--path的名字在模型對象中必須要有--><!---->
用戶名:<form:input path="uname"></form:input><br/><!--文本框 path和 普通的表單元素的name一樣-->
密碼:<form:password path="upwd"></form:password><br/>
性別:<form:radiobutton path="sex" value="男" label="男"></form:radiobutton>
<form:radiobutton path="sex" value="女" label="女"></form:radiobutton><br/>
城市:<form:select path="city">
<form:option value="長沙"></form:option>
<form:option value="株洲"></form:option>
<form:option value="湘潭"></form:option><br/>
愛好:<form:checkbox path="hobby" value="籃球" label="籃球"></form:checkbox>
<form:checkbox path="hobby" value="排球" label="排球"></form:checkbox>
<form:checkbox path="hobby" value="足球" label="足球"></form:checkbox>
<form:checkbox path="hobby" value="乒乓球" label="乒乓球"></form:checkbox><br/>
</form:select>
<input type="submit" value="提交">
</form:form><!--表單-->
</body>
</html>
高級標籤的使用
//測試form的高級標籤 下拉列表 複選框
@RequestMapping("testTag1")
public String testTag1(ModelMap modelMap){
List<String> list=new ArrayList<>();
list.add("籃球");
list.add("排球");
list.add("足球");
Student student=new Student();
student.setHobby(new String[]{"排球","足球"});
//城市集合
List<City> cities=new ArrayList<>();
cities.add(new City(1,"長沙"));
cities.add(new City(2,"株洲"));
cities.add(new City(3,"湘潭"));
cities.add(new City(4,"衡陽"));
cities.add(new City(5,"邵陽"));
String[] sexs={"男","女"};
//將集合放入模型集合中
modelMap.addAttribute("sexs",sexs);
modelMap.addAttribute("cities",cities);
modelMap.addAttribute("list",list);
modelMap.addAttribute("student",student);
return "tag";
}
頁面
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form:form action="updateStudent.action" method="post" modelAttribute="student">
<!--path中屬性的實體類對象一定要在 modelAttribute中配置-->
<!--這裏的path一定要對應一個實體類中的屬性-->
<!--如果在模型對象中有,就會默認選中-->
愛好:<form:checkboxes path="hobby" items="${list}"></form:checkboxes>
<br/>
城市: <form:select path="cid">
<form:options items="${cities}" itemLabel="cname" itemValue="cid"></form:options>
</form:select><br/>
<input type="submit" value="修改">
性別:<form:radiobuttons path="sex" items="${sexs}" ></form:radiobuttons>
</form:form>
</body>
</html>