使用jquery ui做弹框+使用$.get访问servlet并传参

刚刚接触jquery,很多东西都不是很理解,主要还是停留在copy代码的位置上,现对今天学到的知识总结如下:

1.        $('#dialog1')代表获取iddialog1的元素

2.       Jquery弹框:

这里使用了jquery ui (访问http://jqueryui.com/ )

通过用户自定义得到自己想要的弹框样式,并根据需要勾掉一些不用的功能,然后下载文件到本地.

jsp中引入文件夹中所带的文件

jquery-ui-1.7.3.custom.css    --自定义的样式文件,如果要修改弹框样式可以改这个

jquery-1.3.2.min.js

jquery-ui-1.7.3.custom.min.js

这样就可以在自己的页面中使用Jquery弹框了,使用方法是:

(1)     首先,要在body中建立一个div并指定其id,这个div就是放置弹框中的内容,可以按照自己的想法来设计及修改.:

<div id="dialog1" title="注意"></div>

(2)     然后在js中写入dialog1的声明:

<script type="text/javascript">

$(function(){

       $('#dialog4').dialog({  

           autoOpen: false,

           width: 375,

           position:[180,60],

           buttons: {

               "更新": function() {

                  $(this).dialog("close");

              },

              "取消": function() {

                  $(this).dialog("close");

              }

           }

     });

});

</script>

其中position可以设置弹框的位置,buttons中的function可以定义自己想要触发的事件

(3)     在事件触发中弹出dialog

$('#dialog2').dialog('open');

(4)     当想要重复使用同一dialog时可以修改:

若修改提示的button,可使用语句:

$('#dialog1').dialog('option', 'buttons',{

                  "确定": function() {

                     $(this).dialog("close");

                  }

            });

若想修改提示文字,可使用:

$('#dialog1').html('请选择要删除的条目!');

 

3.       Jquery的使用

(1)     获取text的值: $('#select').val(),该值不能进行设置,若要设置需要通过attr来实现.

(2)     获取某元素某个属性的css$('#select').css(“display”)

(3)     设置某元素某个属性的css$('#select').css(“display”,’none’)

Display正常时是$('#select').css(“display”,’’)

(4)     访问servlet并传参

这里访问servlet的方式是:

 var name=$('#name').val();

       var parentid=$('#parentid').val();

       var comments=$('#comments').val();

       $.get("DeviceTypeAdd",{name:name,parentid:parentid},

           function dedit(data){                   

              //alert(data);//很多时候数据出错我都会通过弹data值来差错

              if(data=="true"){

                  $('#dialog3').html('添加成功!');    

              }

              else{

                  $('#dialog3').html('添加失败!');

              }

              $('#dialog3').dialog('open');

        });

(在刚开始做这部分的时候很不理解,以为jquery访问servlet和在MVC架构中使用servlet一样,访问完后会进行页面的跳转.而事实上,jquery在通过$.get方式访问后,还会回到原来的jsp页面,只是返回一个data值来表示访问成功.我们通常使用这个data值来传递一些有用的信息.比如返回json数组,会在下一篇里详细说说)

其中$.get要注意在servlet中有相应的doGet操作

传参要在servlet中有相应的request.getparameter

如果传的是数组,也可以是request.getparametervalues

servlet运行成功,会返回一个data,这个data值可以在servlet中通过out.write输出得到:

以与上面的js对应的servlet为例

/*DevicetypeAdd.java*/

 

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
  response.setContentType("text/html");
  request.setCharacterEncoding("UTF-8");/*解决中文乱码的问题*/
   response.setCharacterEncoding("UTF-8");
        PrintWriter out = response.getWriter();
        boolean data=true;
        
  String name=request.getParameter("name");
  int parentid=2;
  String comments=request.getParameter("comments");
  Connection conn=null;
  PreparedStatement ps=null;
  ResultSet rs=null;
  try{
   conn=DBConnection.getConnection(); 
   ps=conn.prepareStatement(
   "insert into ddpms_devicetype values(ddpms_devicetype_seq.nextval,?,?,?)");
   ps.setString(1, name);
   ps.setInt(2,parentid);
   ps.setString(3,comments);
   int flag=ps.executeUpdate();
   if(flag!=1)
    data=false;
  }catch(Exception e){
   e.printStackTrace();
  }
  finally{
   try{
    DBConnection.dbClose(conn,ps,rs); //释放数据库连接资源
   }catch(Exception e){
    e.printStackTrace();
   }
  }
  out.write(String.valueOf(data));
 }

  

 

4.       Js的退出操作是: return  false;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值