开发者社区> 问答> 正文

问大牛一个换行符和制表符的问题? 400 报错

问大牛一个换行符和制表符的问题? 400 报错 [年龄从    1    改为    2    ]
[24H尿量从    空值    改为    1    ]

[出生日期从    2013-04-03    改为    空值    ]

我在前台获得用户改过的内容 在后台通过\t \n 把内容格式化成上面的备注

同意审核的时候 再split("\\n") split("\\t") 把上面的内容解析出来 更新数据库

按道理说 如果用户改的东西包含“\t”或者“\n”的时候 我解析应该会出错啊

比如[备注从    空值    改为    dsafa\n\t    ]

这样应该是有bug的    但实际运行没有bug

这到底是为什么了? 难道input元素里的\n\t和自己在后台用字符串拼的\n\t不一样??

还是Java split这个方法我不会用?

展开
收起
爱吃鱼的程序员 2020-06-03 14:33:02 488 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    这个可以看一下ASCII定义

    dsafa\n\t  这里解析成了 \,n,\,t。


    ###### indexOf("\n") 这里的"\n"表示换行符, 不会匹配文本中的'\n' , 你写一个input框,在里面输入换行的话就能匹配上了~
    ######

    引用来自“吕明明”的答案

    indexOf("\n") 这里的"\n"表示换行符, 不会匹配文本中的'\n' , 你写一个input框,在里面输入换行的话就能匹配上了~
    好在input 里按回车没用 按tab键也不行 所以我怕用户输入的是\n \t这样的 奇怪的是输入了这样的应该会报错 结果却没报
    ######
    <script>
    function w() {
    str = document.getElementById('a').value;
    if(str.indexOf("\t")>0||str.indexOf("\n")>0){ alert(0)}
    else{alert(1)}
    }
    </script>	<textarea id=a>
    </textarea>
    <input type=button onclick=w() />
    你用这个代码测试一下试试,textarea里可以输入回车,tab的话可以在先记事本里敲一个,然后复制过来~######

    引用来自“吕明明”的答案

    <script>
    function w() {
    str = document.getElementById('a').value;
    if(str.indexOf("\t")>0||str.indexOf("\n")>0){ alert(0)}
    else{alert(1)}
    }
    </script>	<textarea id=a>
    </textarea>
    <input type=button onclick=w() />
    你用这个代码测试一下试试,textarea里可以输入回车,tab的话可以在先记事本里敲一个,然后复制过来~
    我也是这么写的啊 \n\t直接弹0
    2020-06-03 16:51:03
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载