`
xiao_yi
  • 浏览: 405308 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ext Login,服务端返回后出现页面脚本错误

阅读更多

先看下页面....

<%@ page contentType="text/html;charset=GBK" pageEncoding="GBK" %>


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>extDemo</title>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/js/ext-2.2/resources/css/ext-all.css" />
<script type="text/javascript" src="<%=request.getContextPath() %>/js/ext-2.2/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/ext-2.2/ext-all.js"></script>

</head>
<body>
<script type="text/javascript">
Ext.onReady(
  function(){   
          //使用表单提示
          Ext.QuickTips.init();
          Ext.form.Field.prototype.msgTarget = 'side';
       
          //定义表单
          var simple = new Ext.FormPanel({
            labelWidth: 75,          
            baseCls: 'x-plain',
            defaults: {width: 150},
            defaultType: 'textfield',//默认字段类型
                 
            //定义表单元素
            items: [
             {
                  fieldLabel: 'Username',
                  name: 'name',//元素名称
                  //anchor:'95%',//也可用此定义自适应宽度
                  allowBlank:false,//不允许为空
                  blankText:'Please input your name'//错误提示内容
                },
                {
                   inputType:'password',
                  fieldLabel: 'Password',
                  //anchor:'95%',
                  name: 'pws',
                  allowBlank:false,
                  blankText:'Password is empty'
                }
            ],

            buttons: [{
               text: 'Login',
               type: 'submit',
               //定义表单提交事件
               handler:function(){
                           if(simple.form.isValid()){//验证合法后使用加载进度条
                           Ext.MessageBox.show({
                              title: 'Please wait a moment.',
                              msg: 'Loading...',
                              progressText: '',
                              width:300,
                              progress:true,
                              closable:false,
                              animEl: 'loding'
                           });
                           //控制进度速度
                           var f = function(v){
                            return function(){
                                    var i = v/11;
                                    Ext.MessageBox.updateProgress(i, '');
                                    };
                           };

                           for(var i = 1; i < 13; i++){
                              setTimeout(f(i), i*150);
                           }
                                 
                          //提交到服务器操作
                          simple.form.doAction('submit',{
                            url:'LoginServlet',//文件路径
                            method:'post',//提交方法post或get
                            params:'',
                            //提交成功的回调函数
                            success:function(form,action){
                            alert("in");
                                 if (action.result.msg=='ok') {
                                    document.location='success.jsp';
                                 } else {
                                    Ext.Msg.alert('Login error',action.result.msg);
                                 }
                            },
                            //提交失败的回调函数
                            failure:function(){
                                 Ext.Msg.alert('Error','Server is error!');
                            }
                          });
                        }                                                    
                  }
             },
             {
                text: 'Cancel',
                handler:function(){simple.form.reset();}//重置表单
             }
            ]
         });   
                //定义窗体
               win = new Ext.Window({
                  id:'win',
                  title:'User Login',
                  layout:'fit',   //之前提到的布局方式fit,自适应布局               
                  width:300,
                  height:150,
                  plain:true,
                        bodyStyle:'padding:5px;',
                  maximizable:false,//禁止最大化
                  closeAction:'close',
                  closable:false,//禁止关闭
                  collapsible:true,//可折叠
                  plain: true,
                  buttonAlign:'center',
                  items:simple//将表单作为窗体元素嵌套布局
               });
               win.show();//显示窗体
                              
       });
</script>
</body>
</html>

 

再看下服务端...

package demo;

import java.io.IOException;
import java.sql.ResultSet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;


public class LoginServlet extends HttpServlet
{
	public void doGet(HttpServletRequest request,HttpServletResponse response)
		throws ServletException,IOException
	{
		response.setContentType("text/html;charset=gb2312");
		request.setCharacterEncoding("gb2312");
		
		try
		{
			String user=request.getParameter("name");
			String pasd=request.getParameter("pws");
			String flag="";
			
			System.out.println("---------------------user:"+user+"----pwd:"+pasd);
			if(user!=null && !"".equals(user)){
				if(pasd!=null && !"".equals(pasd)){
					DBconnection conn = new DBconnection();
					System.out.println("select * from user u where u.username="+user+" and u.password="+pasd);
					ResultSet rs = conn.getResult("select * from user u where u.username='"+user+"' and u.password='"+pasd+"'");
					
					if(rs.next()){
						flag="0";
					}
				}
			}
			System.out.println("------------flag:"+flag);
			if(flag!=null && !"".equals(flag)){
				//json形式返回数据,如何返回???
				String json = "(success:true,msg:\'ok\')";
				response.getWriter().write(json);
			    response.getWriter().flush();
			    System.out.println(json);
				response.sendRedirect("index.jsp");
			}
			else{
				String json = "(success:true,msg:\'Login fail\')";
				response.getWriter().write(json);
			    response.getWriter().flush();
			    System.out.println(json);
				response.sendRedirect("index.jsp");
			}
		}
		catch(Exception ex){
			
		}
	}
	public void doPost(HttpServletRequest request,HttpServletResponse response)
		throws ServletException,IOException
	{
		doGet(request,response);
	}
}

 

 

问题出在从服务端返回客户端时...页面出现脚本错误...指向页面的第24行...少')'号....哪位朋友知道帮帮忙....先谢了..初学Ext,所用API为2.2版本.

 

另外还想问一下,从服务端回显json格式数据时,以什么方式?是用out,还是write还是其它什么? :)

分享到:
评论
1 楼 xiao_yi 2008-11-24  
无人解答?

相关推荐

    EXT LOGIN EXT LOGIN

    EXT LOGIN EXT LOGIN EXT LOGIN

    Ext登陆login

    11. **错误提示**: 当验证失败时,可以使用`Ext.MessageBox`展示错误消息。 示例代码可能如下: ```javascript Ext.application({ name: 'LoginApp', launch: function () { Ext.create('Ext.container....

    完整版脚本娃娃__Ext4.1.0_Doc中文版_V1.0.0_Beta

    **脚本娃娃(ScriptDoll)Ext4.1.0 文档中文版 V1.0.0 Beta** 脚本娃娃,作为一个强大而灵活的脚本工具,被广泛应用于自动化任务执行、系统管理以及软件开发中。这个文档集合,标题为“完整版脚本娃娃__Ext4.1.0_...

    Extjs中文API(脚本娃娃 (Ext4.1.0 Doc中文版 V1.0.0 Beta))

    脚本娃娃 (Ext4.1.0 Doc中文版 V1.0.0 Beta),感谢20多位翻译人员的努力。 网上关于Extjs的文档大多是英文版的,快速阅读不太方便,此文档index.html用浏览器打开后是中文版,帮助新手使用。

    Ext介绍以及_ext页面布局

    接着,`ext22/adapter/ext/ext-base.js`是基础脚本,定义了ExtJS的核心功能和基础类,而`ext22/ext-all.js`包含了完整的ExtJS库,依赖于`ext-base.js`,因此必须先导入。 在创建ExtJS应用时,一个常见的入门示例是...

    脚本娃娃 (Ext4.1.0 Doc中文版 V1.0.0 Beta).rar_beta

    extjs中文api,让您更好的了解如何使用extjs

    RoundPrice-Ext - MetaTrader 5脚本.zip

    《RoundPrice-Ext - MetaTrader 5脚本详解》 MetaTrader 5(MT5)是一款全球交易者广泛使用的交易平台,它提供了丰富的技术分析工具、图表功能以及自动化交易能力。"RoundPrice-Ext"是一个专门为MT5设计的脚本,其...

    脚本娃娃(Ext4.1.0 Doc V0.1 Beta)

    此次Ext4.1.0 API CHM中文版编写由脚本娃娃团队,学云网及四川IT俱乐部首发联合首发 脚本娃娃(www.58script.com 口令:Ext)学云网(www.ixueyun.com) 首发为部分翻译版本,敬请期待后续中文完整版本

    SSH和Ext整合 更新---sql脚本

    这次我们将讨论的是如何将这两个技术栈整合,并修复SQL脚本中的错误。 首先,让我们深入了解SSH框架。Spring是一个全面的Java企业级应用框架,它提供依赖注入(DI)和面向切面编程(AOP)功能,帮助开发者管理对象...

    Ext 的login控件

    - **XSS防护**:对用户输入进行验证和转义,防止跨站脚本攻击。 总的来说,ExtJS的login控件提供了构建强大且用户友好的登录界面的工具,而统一登录和单点登录则为大型企业级应用提供了更高效、安全的用户认证方案...

    Ext3.2中文API(脚本娃娃final)

    Ext3.2中文API(脚本娃娃final版本) 翻译组: 飞鸿、粞饭、菜鸟、我不是坏男人、徐治魔 夜雨倾城、Jacky、babydeed、糊ぃ涂、大漠穷秋 组织: 大漠穷秋 编译器: 大漠穷秋

    EXT 如何画出页面

    EXT 如何画出页面,主要是js.如果还需要其它,我会整理后上传

    EXT样式的页面原型

    JavaScript是一种客户端脚本语言,它允许在用户浏览器上运行代码,从而实现页面的实时更新和用户交互。EXT库中的组件大部分都是由JavaScript对象构建的,它们可以通过JavaScript API进行配置、操作和扩展。 4. 页面...

    ext js 页面自动刷新教程集合

    在Ext JS中,页面的自动刷新功能通常涉及到数据网格(Grid)的实时更新,这在处理动态数据流或者需要实时显示新数据的场景中非常常见。本教程集合将深入探讨如何在Ext JS中实现页面,特别是数据网格的自动刷新。 一...

    ext session失效 页面跳转

    如果服务器返回的信息表示Session已经失效,EXT应用可以调用`Ext.util.NavigationModel.redirectTo`或`window.location.href`等方法,将页面重定向到登录页面。 在后端,开发者需要设置Session的生命周期和超时策略...

    Ext2.3编写的Grid列表页面

    Ext编写的列表页面,支持编辑,排序等功能

    cssjquery仿ext样式页面

    当我们谈论“cssjquery仿ext样式页面”时,意味着在网页设计中,使用CSS和jQuery来模仿EXT.js框架的外观和功能。 EXT.js是一个强大的JavaScript框架,它提供了一套完整的用户界面组件和数据绑定机制,用于构建富...

    Ext 例子代码

    Ext脚本示例Ext脚本示例Ext脚本示例Ext脚本示例Ext脚本示例Ext脚本示例

    ext 打造华丽页面

    EXT,全称EXT JS,是一种基于JavaScript的开源前端框架,主要用来构建富互联网应用程序(Rich Internet Applications,简称RIA)。EXT 1.1是EXT JS的一个早期版本,它为开发者提供了强大的组件模型、数据绑定功能...

Global site tag (gtag.js) - Google Analytics