首页 > 其他分享 >通过jq读取和修改json数据

通过jq读取和修改json数据

时间:2023-09-18 12:44:06浏览次数:35  
标签:function console 读取 jq json log data yynum

我接到了这么一个任务,页面就是非常简单的页面,不需要搭建好的后台,也没什么数据库,在这个条件下,点击“预约”按钮,可以保存点击用户的数量。

要求很明确,要保存,不能刷新或者第二天数量就变了,所以是一定要有文件保存这数据的。

我的参考了网上大部分的内容,发现单纯通过JavaScript是不能修改文件的,所以需要php配合,好在是放在服务器里的,有php环境。

以下就是非常简单的代码实现。

注入了jq后,页面代码:

<div class="number">
    <span id="yynum">0</span>
</div>
<div class="yuyue">
    <a href="javascript:;" onclick="updateBtn()" title="预约">
        <img src="./images/kb00.png" width="220">
    </a>
</div>
<script>
    $(function() {
        updatehtml();
    })
    //更新页面
    function updatehtml(){
        $.ajax({
            url: "data.json", //同文件夹下的json文件路径
            type: "GET", //请求方式为get
            dataType: "json", //返回数据格式为json
            success: function(data) { //请求成功完成后要执行的方法 
                console.log("获取json数据成功,ajax刷新数据。");
                $("#yynum").html(data.yynum);
                console.log(data);
            }
        })
    }
    //按钮,获取json数据传递到修改方法
    function updateBtn() {
        var yynum = 0;
        $.ajax({
            url: "data.json", //同文件夹下的json文件路径
            type: "GET", //请求方式为get
            dataType: "json", //返回数据格式为json
            success: function(data) { //请求成功完成后要执行的方法 
                yynum = data.yynum;
                console.log("请求存储的json数据,yynum="+yynum);
                updateFile(yynum)
            }
        })
        // 获取输入的内容
    }
    //修改json数据
    function updateFile(yynum){
        var newContent = '{"yynum":"'+ (parseInt(yynum) + 1) +'"}';
        $.ajax({
            url: "update.php", // 后端处理文件的路径
            type: "POST",
            data: {
                content: newContent
            }, // 发送给后端的数据
            success: function(response) {
                $("#yynum").html(parseInt(yynum) + 1);
                console.log("文件已成功修改");
            },
            error: function(xhr, status, error) {
                console.log("修改文件时发生错误:" + error);
            }
        });
    }
</script>

 

update.php代码:

<?php
$content = $_POST['content']; // 接收前端传递过来的修改内容
$filename = 'data.json'; // 待修改的本地文件,可以根据实际情况更改
if(file_exists($filename)) // 检查文件是否存在
{
file_put_contents($filename, $content); // 修改文件内容
echo "文件已成功修改";
}
else
{
echo "文件不存在";
}
?>0

 

data.json代码

{"yynum":"0"}

 

最简单的三个文件,index.html,update.php,data.json,同一级,然后放在服务器根目录,就能运行了。

这样每次点击预约按钮,就实现了文件里数字的增长。

至于如何实现一台电脑只能预约1次,就属于其他内容了。

标签:function,console,读取,jq,json,log,data,yynum
From: https://www.cnblogs.com/captain1024/p/17711598.html

相关文章

  • 用CSAI_BOM_READ读取WBS元素BOM
    REPORTZTES3.datawa_csintypeCSIN.datatab_stpobtypetableofSTPOB.datatab_STKOBtypetableofSTKOB.datatab_DEP_DATAtypetableofCSDEP_DAT.datatab_DEP_DESCRtypetableofCSDEP_DESC.datatab_DEP_ORDERtypetableofCSDEP_ORD.datatab......
  • 处理Json的工具类
    出列Json的工具类publicclassResult<T>{privateStringcode;privateStringmsg;privateTdata;publicStringgetCode(){returncode;}publicvoidsetCode(Stringcode){this.code=code;}publicSt......
  • jQuery与Ajax:“特别的”load()方法(筛选文档、传递方法、回调函数)
    “大名鼎鼎的”jQuery因为其极简的引用方式而在N年前备受追捧,而今“浪潮”过去,还剩下什么?我认识jQuery,只是在去年接触ajax时了解,从而感兴趣,进而深入探究(其实也没多深入,只是相关的看了一下)。不得不说,jQuery对ajax支持的四个type:post(一般用于发送)、get(一般常用于接收)、put(修改)、dele......
  • pandas实现读取excel并删除第一条内容再保存
    想要实现的是,获取excel的第一条信息之后,把原excel的信息保存。再读取,再保存,这样,每次读取到的信息都是新的信息。工作需要大量的输入证件号查询信息,这样就避免了手动输入。importnumpyasnpimportpandasaspdimportopenpyxlimporttimelianxi=pd.read_excel('./练习.xl......
  • 前端读取目录下所有指定文件
    读取modules下文件示例:/**require.context:1.指定目录2.是否将匹配层级递归至子目录下3.匹配的文件*/constmodulesFiles=require.context("./modules",true,/\.js$/);constmodules=modulesFiles.keys().reduce((modules,modulePath)=>{constmoduleNam......
  • Visual Studio2019:如何从指定路径读取图片,并显示在窗体程序中
    从指定路径读取图片,用pictureBox控件显示​stringpath="D:\\txt.png";//用path存储图片路径pictureBox1.Image=Image.FromFile(path);//创建图片并在pictureBox控件中显示出来补充:1.图片的路径必须包括图片的名称2.在窗体程序中显示图片一般用pictureBox控件,当然了,也存......
  • 好用的C语言JSON解析器
    本文介绍开源C语言库Melon的JSON解析器。相信很多读者都听说过甚至使用过cJSON开源库。那么本文就拿cJSON与Melon的JSON组件进行对比。下面我们就来一起看一看。编码Encode假设我们要构建如下JSON:{"name":"Awesome4K","resolutions":[{"w......
  • FastAPI学习-15.JSON 编码器 jsonable_encoder
    前言在某些情况下,您可能需要将数据类型(如Pydantic模型)转换为与JSON兼容的数据类型(如dict、list等)。比如,如果您需要将其存储在数据库中。对于这种要求, FastAPI提供了jsonable_encoder()函数。使用jsonable_encoderjsonable_encoder在实际应用场景中,可能需要将数据类型(如:Py......
  • Jquery设置select控件指定text的值为选中项
    北环路天河路清华园路徐寨路朝凤路园田路varstreet=‘清华园路’;(‘#streetidoption:contains(’+street+‘)’).each(function(){if((this).text()==street){$(this).attr(‘selected’,true);}});......
  • jquery设置图片可手动拖拽
    JQuery是一款流行的JavaScript框架,可以轻松实现网页交互效果。而其中一种常见效果是图片手动拖拽。以下是设置图片手动拖拽的JQuery代码。$(document).ready(function(){varisDragging=false;varmousePos={x:0,y:0};varelemPos={x:0,y:0};var$elem=$......