-
jquery触发select的change事件失效3
jquery在页面第二次加载的时候触发不了下拉框的change事件,启动tomcat,地址栏输入http://localhost:8080/aa/list.jsp时能够触发下拉框的change事件,但是从servlet过来后就不起作用了,怎么回事?
-------------------
list.jsp页面<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <!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>信息界面</title> <script type="text/javascript" src="js/jquery-1.4.4.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#sel_emp").live('change',function(){ var value = $('#sel_emp').val(); alert(value); window.location = "/aa/servlet/Test1Servlet"; }); }); </script> </head> <body> <select id="sel_emp"> <option value="1">编号</option> <option value="2">姓名</option> </select> <table border="1"> <tr> <th>编号</th> <th>姓名</th> </tr> <c:forEach items="${list }" var="element"> <tr> <td>${element.uid }</td> <td>${element.username }</td> </tr> </c:forEach> </table> </body> </html>
------------------------servletprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Employee employee_01 = new Employee(); employee_01.setUid("1"); employee_01.setUsername("张三"); Employee employee_02 = new Employee(); employee_02.setUid("2"); employee_02.setUsername("李四"); List<Employee> list = new ArrayList<Employee>(); list.add(employee_01); list.add(employee_02); request.setAttribute("list", list); request.getRequestDispatcher("/list.jsp").forward(request, response);
问题补充:Rainbow702 写道你是指,在从servlet 跳转至该页面后,点击下拉菜单,选择一个值的时候,不会触发这下面这个:引用# function(){
#
# $("#sel_emp").live('change',function(){
# var value = $('#sel_emp').val();
# alert(value);
# window.location = "/aa/servlet/Test1Servlet";
# }
是么?
是的
问题补充:Rainbow702 写道你是指,在从servlet 跳转至该页面后,点击下拉菜单,选择一个值的时候,不会触发这下面这个:引用# function(){
#
# $("#sel_emp").live('change',function(){
# var value = $('#sel_emp').val();
# alert(value);
# window.location = "/aa/servlet/Test1Servlet";
# }
是么?
就是第二次进入页面的时候
问题补充:Rainbow702 写道你是指,在从servlet 跳转至该页面后,点击下拉菜单,选择一个值的时候,不会触发这下面这个:引用# function(){
#
# $("#sel_emp").live('change',function(){
# var value = $('#sel_emp').val();
# alert(value);
# window.location = "/aa/servlet/Test1Servlet";
# }
是么?
直接从servlet过来也不得行,但是如果用response.sendRedirect就没问题,那样我就得用request.getSession.setAttribute了,反正是第二次进入页面就触发不了
问题补充:Rainbow702 写道你试试在 ready方法里,只写一句 alert 来测试一下,看看从servlet中forward过来的时候,会不会再次触发 ready 事件。
还是不行,只要是第二次进页面就触发不了
问题补充:Rainbow702 写道你是从list.jsp页面提交一个请求给servlet 处理,处理完了之后又让这个servlet 跳回至这个list.jsp,是么?
是这样的,我就是写个简单的jquery,刚学,就来个这个问题,我晕哦
问题补充:Rainbow702 写道引用是这样的
那你想这过程当中,list.jsp 被加载了几次呢?一次哇,只有一次ready事件被触发。你把 live 改为 bind 试试,看看能不能再次触发呢。$(document).ready(function(){ $("sel_emp").bind({ change:function(){var value = $('#sel_emp').val(); alert(value);} }); });
一样不行
问题补充: 悲催啊,这么简单一个东西居然不得行
问题补充:Rainbow702 写道引用悲催啊,这么简单一个东西居然不得行我之前基本使用原生的JS,框架之类的用的不多,帮不了你啊,惭愧。
谢谢哈,我去找看
问题补充:AngelAndAngel 写道改成$("#sel_emp").change(function(){ var value = $(this).val(); alert(value); window.location = "/aa/servlet/Test1Servlet"; });
还是一样的效果
问题补充:AngelAndAngel 写道
路径问题
改成
<%
String path=request.getContextPath();
%>
<script type="text/javascript" src="<%=path%>/js/jquery-1.4.4.min.js"></script>
天啊,哥,我崇拜你,崇拜的崇,崇拜的拜2011年9月02日 10:17
9个答案 按时间排序 按投票排序
-
采纳的答案
路径问题
改成
<%
String path=request.getContextPath();
%>
<script type="text/javascript" src="<%=path%>/js/jquery-1.4.4.min.js"></script>2011年9月02日 13:31
-
改成
$("#sel_emp").change(function(){ var value = $(this).val(); alert(value); window.location = "/aa/servlet/Test1Servlet"; });
2011年9月02日 13:28
-
引用是这样的
那你想这过程当中,list.jsp 被加载了几次呢?一次哇,只有一次ready事件被触发。你把 live 改为 bind 试试,看看能不能再次触发呢。$(document).ready(function(){ $("sel_emp").bind({ change:function(){var value = $('#sel_emp').val(); alert(value);} }); });
2011年9月02日 12:26
-
你是从list.jsp页面提交一个请求给servlet 处理,处理完了之后又让这个servlet 跳回至这个list.jsp,是么?
2011年9月02日 12:11
-
你试试在 ready方法里,只写一句 alert 来测试一下,看看从servlet中forward过来的时候,会不会再次触发 ready 事件。
2011年9月02日 11:52
-
你是指,在从servlet 跳转至该页面后,点击下拉菜单,选择一个值的时候,不会触发这下面这个:
引用# function(){
#
# $("#sel_emp").live('change',function(){
# var value = $('#sel_emp').val();
# alert(value);
# window.location = "/aa/servlet/Test1Servlet";
# }
是么?2011年9月02日 11:22
相关推荐
在JQuery中,当给radio或checkbox添加一个change事件时,如果它的值发生变化就会触发change事件;本文将详细介绍如何利用JQuery触发Checkbox的change事件需要了解的朋友可以参考下
jquery.selectbox.js select下拉菜单美化代码 jquery.selectbox.js select下拉菜单美化代码 jquery.selectbox.js select下拉菜单美化代码
Jquery模拟select效果实现,纯自写,简单实用,可自行修改样式。
主要介绍了jQuery实现长按按钮触发事件的方法,可应用于手机端应用程序的开发中,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了jQuery中change事件用法。分享给大家供大家参考。具体分析如下: change事件会在匹配元素失去焦点或者其值获得焦点并且改变时触发。 一个完整的事件过程,不但要有能够触发事件的条件,而且还要有事件...
下面小编就为大家带来一篇jQuery为动态生成的select元素添加事件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下拉模糊查询 jQuery-select 下拉模糊查询 jQuery-select 下拉模糊查询 jQuery-select 下拉模糊查询 jQuery-select 下拉模糊查询 jQuery-select 下拉模糊查询 jQuery-select
改变一下思路变成键盘按键事件,如下: ”txtName” runat=”server” xss=removed></asp> 这里有一点毛病是,你复制粘贴的内容,无法触发这个事件。下面是相关的一些代码: 代码如下: function fNameChange(){ if($...
/** * 模拟select * @param {box,tiggle} * @param box 父级别容器[模拟select最外围标签] * @param tiggle 展开事件 [*click | mouseover | 其他dom事件] ...* change(function(){}) 等同于select默认事件change */
简单实用的jquery select2组件
本文实例讲述了基于jQuery的select下拉框选择触发事件实现方法。分享给大家供大家参考,具体如下: 我一直以来都认为,select 下拉框选择对选项 options 使用 onclick 注册事件即可,如下: <select> 选项一...
jquery select2 select美化插件
jquery 超级select插件 v4.0版本
jquery select2 html select 内容搜索 下拉框搜索
jQuery实现select样式美化 jQselect.js
Jquery获取Select标签的值
一个带下拉模糊搜索的select,替换下拉内容后即可直接使用,只需要把对应文件放到指定文件夹中引用即可
jQuery获取Select选择的Text和Value: 代码如下: $(“#select_id”).change(function(){//code…}); //为Select添加事件,当选择其中一项时触发 var checkText=$(“#select_id”).find(“option:selected”).text(); ...