AJAX不会用,找了资料也没看懂,这个地方怎么传时间日期呢


    @RequestMapping("/Sku_Make_upTUUS")
    public String Sku_Make_upTUUS(@RequestParam(defaultValue = "1") Integer pageNo, Model model, String username, String skuf, String chanpinxian, Date indat, Date indatend, String dianpu) {
        Skumake(pageNo,model,username, skuf, chanpinxian, indat, indatend, dianpu);
        return "/Sku_Make_upTUUS";
    $.ajax({
        url:"Sku_Make_upTUUS",//请求的url地址
        dataType:"json",//返回的格式为json
        async:true,//请求是否异步,默认true异步,这是ajax的特性
        data:{"":"",},//参数值
        type:"POST",//请求的方式
    });
<div class="layui-inline layui-show-xs-block">
                            <input class="layui-input"  autocomplete="off" placeholder="开始日" name="start" id="start">
                        </div>
                        <div class="layui-inline layui-show-xs-block">
                            <input class="layui-input"  autocomplete="off" placeholder="截止日" name="end" id="end">
                        </div>

加上:

img


另外试试:
如果时间参数是从input中获取的,那么可以通过jQuery来获取对应的input元素的值。可以将上面的代码略加修改,获取input元素的值,并将其作为参数传递给$.ajax函数,
如果数据类型是JSON类型,则可以将data属性中的参数对象序列化为JSON字符串,并设置contentTypedataType属性。以下是一个范例:

var start = $("#start").val(); // 获取开始时间的值
var end = $("#end").val(); // 获取结束时间的值

var data = {
  start: start, // 开始时间
  end: end // 结束时间
};

$.ajax({
  url: "your_url", // 要提交到的URL
  method: "POST", // HTTP请求方法
  data: JSON.stringify(data), // 将参数对象序列化为JSON字符串
  contentType: "application/json; charset=utf-8", // 告诉服务器发送的数据是JSON类型的
  dataType: "json" // 告诉jquery服务器返回的数据是JSON类型的
}).done(function(response) {
  // 成功的回调函数
}).fail(function(xhr, textStatus, errorThrown) {
  // 失败的回调函数
});

上面的代码中,将data属性中的参数对象序列化为JSON字符串,并设置contentType="application/json; charset=utf-8",告诉服务器发送的数据是JSON类型的。另外,设置dataType="json",告诉jquery服务器返回的数据是JSON类型的,这样jquery在接收到响应时可以将JSON字符串转换为JavaScript对象。

可能会有人不是很理解JS的单线程,明明ajax是一种异步请求,为什么js还是单线程的呢。其实实现多线程的是浏览器,在需要异步请求的时候由浏览器新开一个线程来执行其方法,在请求结束之后可以利用回调函数进行执行获得的参数处理等等。实现的方式是将请求放入一个JS的执行队列中依次执行(这也是JS的单线程体现),这是回调函数和普通函数公用的一个队列。

  • 以下回答由chatgpt基于相关博客总结生成:

    对于时间日期信息的传输可以使用JavaScript内置的Date对象来处理。在前端可以使用以下代码将时间日期转换为字符串,并作为ajax请求传递:

    var date = new Date(); var dateString = date.toISOString(); //将当前时间日期转换为ISO 8601格式的字符串 $.ajax({ ... data: {time: dateString}, ... });

    在后台可以使用框架提供的工具或手动解析ISO 8601格式的字符串来获取时间日期信息,例如Java中可以使用SimpleDateFormat类进行解析:

    //接收前端传递的时间日期字符串 @RequestMapping("/getTime") public String getTime(@RequestParam("time") String timeString) throws ParseException { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); Date date = format.parse(timeString); //对时间日期进行进一步处理 ... }

    如果前端需要获取后台传递的时间日期信息,可以将时间日期转换为ISO 8601格式的字符串,再返回给前端:

    //将时间日期转换为ISO 8601格式的字符串 @RequestMapping("/sendTime") public String sendTime() { Date date = new Date(); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); String timeString = format.format(date); return timeString; }