精华内容
下载资源
问答
  • 今天小编就为大家分享一篇浅谈layui 数据表格前后台传值的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 本资源只有框架所需的jar包,没有配置文件。jar包包括ssm+tiles框架jar包和json值传递所需jar包
  • 前后台传值

    2016-09-25 21:36:11
    传值

    传值

    展开全文
  • Ajax前后台传值

    千次阅读 2019-07-10 16:16:29
    Ajax向后台controller传递参数 function saveReportData(fileName,fileID) { console.log("fileName="+fileName); $.ajax({ type : 'post', url : '${ctx}/reportmanage/specialReportManage/sav...

    Ajax向后台controller传递参数

    function saveReportData(fileName,fileID) {
        console.log("fileName="+fileName);
        $.ajax({
            type : 'post',
            url : '${ctx}/reportmanage/specialReportManage/saveReportData',
            data:{'srFileName':fileName,"srFileID":fileID},
            traditional : true,
            async : false,         
            success : function(result){
                
            },
            error : function(result){
            }
        });    
    }

    后端的两种接收方式

    Ajax的data参数名称(红色标识)必须和@RequestParam中的参数名称保持一致

    @RequestMapping(value = "saveReportData")
    @ResponseBody
    public String saveReportData(
    @RequestParam(value = "srFileName", defaultValue = "") String FileName,
    @RequestParam(value = "srFileID", defaultValue = "") String FileID) throws IOException 
    {
           specialReportManageService.saveReportData(FileName, FileID);
           return "";
    }

    如果没有添加@RequestParam,函数的参数名称必须和Ajax中的参数名称一致

    public String saveReportData( String srFileName,String srFileID) throws IOException {
           specialReportManageService.saveReportData(FileName, FileID);
           return "";
    }

     

     

    JSON.parse()、JSON.stringify()和 eval()函数
    (1)JSON.parse()函数

    作用:将json字符串转换成json对象。


    (2)JSON.stringify()函数

    作用:将json对象转换成json字符串


    (3)eval()函数

    作用:eval()函数可计算某个字符串,并执行其中的javascript表达式或要执行的语句。

    使用eval()函数也可以将JSON字符串解析为对象,这个功能能完成JSON.parse()的功能,但是有不一样的地方。

    eval()还要用一对圆括号将字符串包起来,对此我寻找到比较好的解释就是:

    原因:归结于eval本身的问题,由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。
    加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语句(statement)来执行

    (4)JSON.parse(jsonString)和eval(jsonString)区别

    安全性:JSON.parse()可以解析json格式的数据,并且会对要解析的字符串进行格式检查,如果格式不正确则不进行解析,而eval()则可以解析任何字符串,eval是不安全的。

    格式严格性:JSON.parse()解析的必须是json格式的字符串要不报错,而eval()则没有这么严格,在这里“json格式的字符串”是指要求指定的字符串必须符合严格的JSON格式
     

     

    JS实现Ajax

    <!doctype html>
    <html lang="en">
    <head>
       <meta charset="UTF-8">
       <meta name="viewport"
             content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
       <meta http-equiv="X-UA-Compatible" content="ie=edge">
       <title>Document</title>
    </head>
    <body>
       <button type="submit" id="js_ajax_test">Ajax测试</button>
       <script>
           var js_ajax_test = document.getElementById("js_ajax_test");
           js_ajax_test = function () {
               var xmlHttp = new XMLHttpRequest();
               xmlHttp.open("POST", "/js_ajax_test/", true);
               xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
               xmlHttp.send("username=yang&password=123");
               xmlHttp.onreadystatechange = function () {
                   if (xmlHttp.readyState === 4 && xmlHttp.status ===200){
                       alert(xmlHttp.responseText)
                   }
               }
           }
       </script>
     
    </body>
    </html>

    JQuery实现Ajax

    <!doctype html>
    <html lang="">
    <head>
       <meta charset="UTF-8">
       <meta name="viewport"
             content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
       <meta http-equiv="X-UA-Compatible" content="ie=edge">
       <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
       <title>ajax test</title>
    </head>
    <body>
       <button id="ajaxTest">AJAX测试</button>
       <script>
           $("#ajaxTest").click(function () {
               $.ajax({
                   url: "/ajaxTest/",
                   type: "POST",
                   data: {username: "yang", password:123},
                   success: function (data) {
                       alert(data)
                   }
               })
           })
       </script>
    </body>
    </html>

    参考链接:

    https://blog.csdn.net/qq_37011759/article/details/86174736

    https://www.cnblogs.com/tsx1230/p/8041683.html

    https://www.cnblogs.com/yang-wei/p/10009053.html

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • MVC常用4种前后台传值方法

    千次阅读 2019-11-07 21:06:03
    MVC如何进行前后台传值1、使用viewdata2、viewbag3、TempData4、Model 1、使用viewdata ViewData是一个很早就出来的,在mvc2的时候就用的很火热了,首先它是一个字典型的。就是使用的时候存值必须是 张三:1,李四:...

    1、使用viewdata

    ViewData是一个很早就出来的,在mvc2的时候就用的很火热了,首先它是一个字典型的。就是使用的时候存值必须是

    张三:1,李四:2
    

    这种形式存值进去,在后台使用的时候:

     public ActionResult Index()
            {
                List<Models.UserInfo> ust = db.UserInfo.ToList();
                ViewData["naxtab"] = ust;
                return View();//返回页面
            }
    

    viewdata前台取值

     @foreach (UserInfo item in ViewData["naxtab"] as List<UserInfo>)
            {
                <div class="da">
                    <div> @Html.Encode(item.LoginName)</div>
                    <div> @Html.Encode(item.LoginPwd)</div>
                    <div><a href="/Index/Delete/@Html.Encode(item.UserID)" onclick="return confirm('确定删除?');">删除</a></div>
                </div>
    
            }
    

    从上面也是可以看到viewdata的一个麻烦之处,就是必须存什么类型进去,取值的时候就必须强转为什么类型,否则就会报错!

    取出来的数据
    在这里插入图片描述
    这样就是viewdata的一个存取值的流程了,有没有觉得有点复杂?
    所以下面就接着退出升级版viewbag了!

    2、viewbag

    先简单说说下viewbag是个什么东西,viewbag是从mvc3里面才开始引进使用,ViewBag 是动态类型(dynamic),因为具体跟viewdata不同的就是viewdata是键值对类型,在你使用的时候必须强转为类型或数组,但是viewbag是可以直接用的,就算是存入数组,那也是可以直接使用foreach循环打印出来的。
    viewbag后台存值

    //给viewbag赋值一个集合
    public ActionResult Index()
    {
        string[] items = new string[] {"张三", "李四", "王二" };
        ViewBag.Items = items;//将items集合的值存入viewbag里面
        return View();//返回页面
    }
    

    viewbag前台接收值(数据类型用dynamic或var都可以)

    <ul>
    @foreach (dynamic p in ViewBag.Items)
    { 
    <li>我的viewbag数据: @p</li>
    }
    </ul>
    

    那么打印出来的数据就是
    在这里插入图片描述
    上面的方法是传集合时的用法,博主在学校学的时候一般是进行数据库输出数据,然后常用都是viewdata所以我就想试下用viewbag是否也可以,直接上后台

      List<Models.UserInfo> ust = db.UserInfo.ToList();//使用ef框架取得用户表的值
                ViewBag.Items = ust;//将items集合的值存入viewbag里面
                return View();//返回页面
    

    前台(在这里因为后台返回的是键值对,所以下面的p要点你数据库的字段名)

    <ul>
                @foreach (dynamic p in ViewBag.Items)
                {
                    <li>我的viewdata数据: @p.LoginName</li>
                }
            </ul>
    

    数据
    在这里插入图片描述
    所以好像感觉并没有什么不一样的地方,反而是比viewdata的用法貌似更简单了。
    为此博主专门百度了一下,viewdata是是一个字典型的(Dictionary)。然后viewbag是一个是动态类型(Dynamic),然后viewbag是viewdata后面出来的,可以说是一个升级版,就是在viewdata上加以改进出来的,但是不同的就在于viewdata虽然没有viewbag这么使用方便,但是它的可读性要比viewbag要好,因为就是在viewdata上后台进行转码才有了viewbag,多了一道工序所以影响到了它的可读性。

    3、TempData

    跟viewdata一样,他也是一个字典型的,存值的时候必须是键值对存入!
    不同的是生命周期不一样,viewbagviewdata的生命周期都只有当前页面的控制器(Controller)到页面(view),一旦发生跳转(Redirection),那么它们两个也就不复存在了,但是tempdata的数据是依然有效,最常见用法就是跨页面传值了!

    因为tempdata与viewdata用法基本一样,所以这里就不重复写了

    4、Model

    Model在初学mvc的时候使用比较多,但是后来就觉得不是特别好用,因为一个控制器只能返回一个Model数据,在你一个页面需要返回页面2个以上的表的时候,Model传值也就废了。不过好处就在于,使用是最简单的,适合初学者!
    后台

    public ActionResult Index()
            {
                List<Models.UserInfo> ust = db.UserInfo.ToList();
                return View(ust);//返回页面
            }
    

    没错,就是如此简单,不用申明不用强转,直接return返回即可!!
    前台(使用的时候需要在页面引用项目的Model)

    @using webtwo.Models
    @*webtwo是我的项目名*@
     @foreach (var item in Model)
            {
                <h2>
                    姓名:@Html.Encode(item.LoginName)
                    密码:@Html.Encode(item.LoginPwd)
                </h2>
            }
    

    就这样后台的数据就可以直接在前台展示,就是如此简单!!!

    所以今天的科普就到这里了,以上就是mvc里面常用的4种前后台的传值方式!!!

    展开全文
  • 整理一下前后台传值ajax

    千次阅读 2016-12-03 14:11:44
    5、表单提交(数组传值) html 测试" onclick="test1()" value="测试"> js function test1(){ var data = getFormJson($("#test")); $.ajax({ type : "post", url : ctx+...

    用到ajax大部分都是复制粘贴,今天有时间整理一下

    1、spring mvc中rest方式请求,传递参数

     /** 编辑 */
     @RequestMapping(value="/{id}/edit")
      public ModelAndView edit(@PathVariable Long id,HttpServletRequest request,HttpServletResponse response){
      UserInfo userInfo = (UserInfo)userInfoManager.getById(id);
      return new ModelAndView("/userinfo/edit","userInfo",userInfo);
      }
    2、在js中组装的参数(数组可以直接传,@RequestParam(value="names[]" String names)

    js

    function edit(){
    	var names = new Arrays();
    		names[0]="张三";
    		names[1]="王五";
    	var data = {};
    		data.id=1;
    		data.names=names;
    	var path="";
    	$.ajax({
            url:path,
            type:"post",
            data:data,
            dataType:"json",
            success:function(result){
               alert(result);
            },
            err:function(){
            	alert("请求失败");
            }
        });
    }
    java

    	@RequestMapping("/queryApp")
     	@ResponseBody
    	public List<User> queryApp(HttpServletRequest request,@RequestParam Long id,
    			@RequestParam(value = "names[]") String[] names){
    			......
    			return new ArrayList<User>();
    			}
    3、对于数组来说可以直接传如上,也可以传String如下

    js

    function edit(){
    	var names = new Arrays();
    		names[0]="张三";
    		names[1]="王五";
    	var data = {};
    		data.id=1;
    		data.names=names.join(",");
    	var path="";
    	$.ajax({
            url:path,
            type:"post",
            data:data,
            dataType:"json",
            success:function(result){
               alert(result);
            },
            err:function(){
            	alert("请求失败");
            }
        });
    }
    java(1)

    	@RequestMapping("/queryApp")
     	@ResponseBody
    	public List<User> queryApp(HttpServletRequest request,@RequestParam Long id,
    			@RequestParam String names{
    			String[]  nameStr = names.split(",");
    			......
    			return new ArrayList<User>();
    			}

    4、需要获取到checkbox值

    var ids=new Array();
    $('input[name="expression"]:checked').each(function () {
      ids.push($(this).val());
    });
    5、表单提交(数组传值)

    html

    	<form id="test" >
    	<input name="name" value="name">
    	<input type="checkbox" name="names" value="1">
    	<input type="checkbox" name="names" value="2">
    	<input type="checkbox" name="names" value="3">
    	<input type="button" name="测试" οnclick="test1()" value="测试">
    	</form>

    js

    function test1(){
    	var data = getFormJson($("#test"));
    	$.ajax({
    		type : "post",
    		url : ctx+"application/queryApp/1",
    		data: data,
    		dataType:"json",
    		success:function(result){
    			if(result.status=="200"){
    				interStatusMap = result.data;
    			}
    		}
    	})
    }
    java

    	@RequestMapping("/queryApp")
     	@ResponseBody
    	public List<User> queryApp(HttpServletRequest request,@RequestParam Long id,
    			@RequestParam(value = "names[]") String[] names){
    			String[]  nameStr = names.split(",");
    			......
    			return new ArrayList<User>();
    			}





    你只看到我在不停的忙碌,却没看到我奋进的热情;
    你有你的规则,我有我的选;
    你否定我的现在,我决定我的未来;
    你嘲笑我只懂编码,不配享受,我可怜你被代码操纵,而不自知;
    你可以轻视我的年轻,我会证明这是谁的时代!
    Coding是注定痛苦的旅行,路上少不了Bug和Change,但那又怎样?哪怕通宵达旦,也要编的漂亮!
    我是程序员,我为自己代言。
    展开全文
  • SpringMVC前后台传值写法

    千次阅读 2017-08-22 13:24:32
    前后台传值(参数,对象,集合)
  • 首先说重点:GET请求与@RequestParam,POST请求与@RequestBody是绝配 ...后台接受的参数值只有两种途径,一是url路径,二是请求体 url路径传值 1.如果是127.0.0.1:8080、index?username=张三&age=14 ...
  • SpringMVC中的前后台传值注意事项

    千次阅读 2017-05-22 14:08:33
    1.前台设置contentType:"application/x-www-form-urlencoded",前台是JSON对象,后台接收方法可以是字符串、对象。示例如下: function remoteService(url,postData) { var res = ""; $.ajax({  cache: true, ...
  • JAVA WEB前后台传值

    千次阅读 2018-05-29 18:13:02
    先将需要将前台中获取页面中所提供给你的信息,然后将这信息发送给后台服务层。 思路很简单,那么直接上代码:(代码中有些语句的写法可能有些奇怪,这是因为博主使用了《泽元》框架完成的,但是无论用什么这些...
  • 前台传值:"www.baidu.com?name="+encodeURI(encodeURI(name)); 后台接值: if(null!= name){  name= URLDecoder.decode(name, "utf-8");  }
  • spring boot 前后台传值两种方式

    千次阅读 2019-03-27 18:09:51
    1.如果需要传递的参数较少,比如只需要两个字段id和name,后台方法参数可以直接写这两个字段的类型及字段名 例如: 前台页面: <form action="" th:action="@{/mttitle/query}" method="post"> Id:<input ...
  • 管理系统前后台之间的传值尤为关键,很多时候我们前台显示的数据要通过连接后台的数据库并从数据库中获得,更多的时候我们需要把前台对数据库的修改传递到后台以便完成对数据库的修改。其中我们最长使用的传值方式有...
  • jsp与java前后台传值

    千次阅读 2016-11-08 15:51:22
    由于本人是刚接触jsp和java的小白。...这时候就可以将后台传过来的值显示在页面中了。当然后面还需把他显示到表格或者其他地方。我就不详细说明了 http://www.cnblogs.com/lraa/p/3249990.html
  • struts1框架,做了一个功能,在页面显示多条数据库数据,前台都是输入框显示,可以修改,修改完成后点击保存将前台数据传到后台,将数据库这些数据都进行更新,怎么把前台修改完后的所有数据根据每条的id值传到后台...
  • checkbox 前后台传值

    2019-01-19 16:49:57
    &lt;%@ page import="java.util.List" %&gt; &lt;%@ page contentType="text/html;charset=UTF-8" language="java" %&gt; &lt;%@taglib prefix="...gt
  • @Controller //下面的注解@RequestMapping相当于action中的namespace @RequestMapping("/") public class MyController implements ServletContextAware{ //注意让类实现ServletContextAware接口,就可以直接获取...
  • springMVC前后台传值乱码问题

    千次阅读 2017-07-06 12:49:39
    问题场景在项目中需要在前台传中文参数到controller里,debug时发现乱码,在controller向前台传值时,如果有中文也是乱码。解决方式一前提:项目采用utf-8编码a. 编辑web.xml,添加过滤 <filter-name>...
  • 前后台传值方式

    2017-08-20 15:57:09
    自己写的代码太少,有时候前后台传值还写的不是很熟练,现在总结一下,加深下印象。 1.jquery的Ajax传值 ----》前台到后台 期望功能:把前台用户输入的信息保存在数据库里。 前台jsp代码: function ...
  • 1,后台往前台传值----单个变量直接传递到页面元素 前台代码 <b><%=strCompanyName%>费用明细</b> 后台代码 public partial class MyWebPage: System.Web.UI.Page { public string ...
  • 前后台传值乱码问题万能思想,通用 只说思想不讲代码!很少 很容易,看懂就完全不会出现乱码了!
  • 前后台传值的情况

    2019-05-29 12:55:30
    前后台的相互传值如果值太多,写的麻烦累人,且容易出错。这里整理出一套使用标记 标签属性的办法来传值, 后台取值和前台的绑定都有了大大的简化。 ······························...
  • 最基本的前后台传值

    2019-10-03 21:09:18
    data:{name:name},//data是前台传向后台的值 type:'get', success:function(data,status){ console.log(data,status)//这里console出来的data值会在浏览器页面显示 }, error:function(err){ console.log(err)...
  • 一、后台接收URL拼接参数 后台代码: @GetMapping("/item/{code}") //对应的链接为:/item/10001 public List getProduct(@PathVariable(“code”) String productCode) { //your code } 二、后台接收查询参数 ...
  • struts前后台传值问题

    2018-05-18 17:48:46
    作为一个小白,在项目开发过程中,开发框架中如果用到了struts2,那么要记住,前后台之间的传值方式一定不是通过return的方式来进行传递的。因为struts2中的return是固定返回String类型的值,其作用是用来定位程序...
  • 前后台传值小结

    千次阅读 2017-04-17 21:17:06
    strust2前后台传值方法 3. springMVC前后台传值常用方法 4. 使用ajax和json传值的常用方法*1. 经典servlet和jsp页面传值常用方法。前台–〉后台 1用户浏览器通过form表单向后台,提交用户数据。2servlet用一...
  • 异步传值 1.第一种呢,也是最简单的一种,通过get提交方式,将参数在链接中以问号的形式进行传递。 // 前台传值方法 // 触发该方法调用ajax function testAjax(yourData) { $.ajax({ type: "get", // 以get方式...
  • Jfinal前后台传值

    千次阅读 2017-12-15 16:36:06
    现在咱们就简单的了解一下JFinal框架的传值。 基础知识: 在尝试着做了这么几个页面之后,发现如下: 1、controller中返回的JSon数据主要有两种方法:一个是我第一次接触即将要在下文中说的setAttr...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,349
精华内容 4,939
关键字:

前后台传值