在实际应用中,遇到这种以回车分隔的字符串,单是存储来说倒是简单,但是在实际应用中还要对内容进行判断,看是否符合内容的限制,比如说图中的区域限制,我们还要对区域进行判断和限制。
我是这么处理的:
//首先获取字段
$limitArea = I('limit_area','','filter_keyword');
//然后对其进行回车处理,并转换为数组
$limitArea = ecplode(PHP_EOL,$limitArea);
//地区限制临时数组
$limitAreaTemp = [];
foreach ($info['limit_area'] as $area){
//因为我有一个数据表是专门用来存储位置信息的,names:地区名称,code:区域编码
//此类信息可以参考ip.taobao.com中的通过ip获取的位置信息
$areaInfo = D('admin_region2')->where(array('names'=>$area))->find();
//把输入的地址转换为区域编码存入临时数组
$limitAreaTemp[] = $areaInfo['code'];
$info['limit_area'] = json_encode($limitAreaTemp);
$res = D('activity')->where(array('id' => $id))->save($info);
现在输出一遍,看下效果:
获取的$limitArea输出:
现在输出去除空格并组成数组的$limitArea:
现在输出$limitAreaTemp:
现在输出$info['limit_area']:
最终以这种格式存入数据库。
现在开始看我们的调取,并展示在textarea中
$info = $this->db->find($activityID);
//我们从数据库中查询的$info['limit_area']为json格式的城市代码,我们现在需要对其进行转换成names
$info['limit_area'] = json_decode($info['limit_area']);
$limitAreaTemp = [];
foreach($info['limit_area'] as $area){
$areaInfo = D('admin_region2')->where(['code'=>$area])->find();
$limitAreaTemp[] = $areaInfo['names'];
$info['limit_area'] = join(PHP_EOL,$limitAreaTemp);
$this->assign('info',$info);
最终$info['limit_area']就是博客第一张图片的状态
3、前端如何判断是否在区域范围内
获取用户的ip地址进行判断,通过ip.taobao.com接口返回的城市编码,看此编码是否在此区域的数组中
$locationInfo = $region->getTaobaoIpArea(get_client_ip(0, 1));
$isInLimitArea = in_array($locationInfo['city_id'],json_decode($info['limit_area']));
1、 在实际应用中,遇到这种以回车分隔的字符串,单是存储来说倒是简单,但是在实际应用中还要对内容进行判断,看是否符合内容的限制,比如说图中的区域限制,我们还要对区域进行判断和限制。 我是这么处理的: //首先获取字段$limitArea = I('limit_area','','filter_keyword');//然后对其进行回车处理...
1、使用<pre>标签,该标签能按
输入
的
格式
原样输出。
2、采用该标签后,在移动端等比较小的屏幕上,会发现由于按原
格式
输出,如果用户连续
输入
很长,会出现超出屏幕框的的情况,需要加入以下样式:
pre {
white-space: pre-wrap; /*css-3*/
textarea
去除多余空格和
回车
的方法及其属性
1.错误解决方法
使用
textarea
的标签
时
候发现多了空格或者’\n‘,后来发现是</
textarea
>标签的位置错了
以下是错误示范:
<
textarea
style="width:100%;height:5%;">你好
</
textarea
>
以下是正确示范:
<
textarea
style="...
格式
化
json
数据
展示区域
<div id="show
Json
Data" contenteditable="true" style="width:100%;height:300px;border:1px red solid;">测试</div>
<#form:
textarea
path="show
Json
Data" maxlength="10000" class="f...
将input、select、
textarea
的name作为
json
的key,
输入
框
中
的值作为
json
的值,封装成
json
对象,以作为ajax请求传送的参数。
function serialzerbale() {
var $div_input_query = $("div[class='content'] input");
var $div_select_query = $("div[cl...
应该都有人试过
textarea
的默认值问题,如果value的值绑定的是data的
数据
,而这个
数据
又是在onLoad
时
通过wx.request从服务器获取的话,那么在真机测试的
时
候,data的
数据
是渲染不出来的,然后找到一个解决方法,就是在onReady里面再重新一次setData。
假设data
中
有这么一个info,它的值在onLoad
时
通过请求获取然后setData,然后
textarea
组件的value绑定了它,但这样的话,真机测试
时
数据
是渲染不出来的
data{
info:''
那么我们添加一段代码,就是在onReady再进行一次setData,赋的值是它本身
如何识别一个字符串是否
Json
格式
ScriptEngineManagersem=newScriptEngineManager();
ScriptEnginese=sem.getEngineByName("js");
String
json
str="\r\n[{}]";
if(!
json
st...
在Vue
中
,如果想要在`<
textarea
>`
中
默认加上回复
内容
,可以使用`v-model`绑定
textarea
的
内容
,并在Vue实例
中
设置默认值。
以下是一个示例:
```html
<template>
<
textarea
v-model="replyContent"></
textarea
>
<button @click="submitReply">提交回复</button>
</template>
<script>
export default {
data() {
return {
replyContent: '在此
输入
回复
内容
...',
methods: {
submitReply() {
// 提交回复的逻辑
</script>
在上述代码
中
,`replyContent`是
textarea
的
内容
绑定,初始值为"在此
输入
回复
内容
..."。如果用户不修改
内容
,则提交
时
会提交该默认值。当用户开始
输入
内容
时
,该默认值会被覆盖。在`submitReply`方法
中
,可以获取`replyContent`的值并进行相应的提交操作。