【问题标题】:Problems adding to list and submitting via html form and jquery通过 html 表单和 jquery 添加到列表和提交的问题
【发布时间】:2014-06-25 11:02:10
【问题描述】:

我正在开发一个 Node.JS 应用程序。在客户端我有以下

input(type='hidden', name='imgUrl', id="categorylist", value='[]')
...
var images = $.parseJSON($('#categorylist').val())
images.push(data.result.secure_url)
var jsonImages = JSON.stringify(images)
$('#categorylist').val(jsonImages)

然后我保存到这样的编排数据库中......

exports.addToDb = function(req, res, next){
  console.log(req.body)
  if(req.params.type) db.put(req.params.type, uuid.v4(), req.body, false)
  next();
}

问题是当它被保存时,它看起来像......

"imgUrl": "[\"https://res.cloudinary.com/dbkbp16kc/image/upload/v1403448829/img.png\"]"

“正常”的样子……

"imgUrl": [
  "https://f0.bcbits.com/img/a2976218772_2.jpg"
]

如您所见,引号的转义似乎是导致此问题的原因。有人知道我将如何改变处理方式吗?

【问题讨论】:

  • 为什么在字符串中有 value='[]' ,括号?
  • 我不知道,因为我认为我需要它。不是这样吗?
  • 删除那些完全破坏它 * 使其成为 "input(type='hidden', name='imgUrl', id="categorylist", value=[])"
  • 您使用的是 Express 吗?如果是这样,请将app.use(express.bodyParser()); 添加到您的应用配置中。
  • 我认为是因为 $('#categorylist').val(jsonImages), jsonImages 存储为字符串。你试过在 req.body.imgUrl 上做 JSON.parse 吗?

标签: jquery html css node.js


【解决方案1】:

这是因为您stringify JSON。

删除var jsonImages = JSON.stringify(images),而是将images直接设置为'#categorylist'的值

input(type='hidden', name='imgUrl', id="categorylist", value='[]')
...
var images = $.parseJSON($('#categorylist').val())
images.push(data.result.secure_url)
$('#categorylist').val(images)

更新

@Jackie 这个"imgUrl": "[\"https://res.cloudinary.com/dbkbp16kc/image/upload/v1403448829/img.png\"]" 是因为你是stringifying JSON。如果您需要将jsonImages 用于其他地方,最好将JSON.parse(images) 设置为#categorylist 的值

var jsonImages = JSON.stringify(images)
...
$('#categorylist').val(JSON.parse(jsonImages))

【讨论】:

  • 我回家后会测试这个,但你确定它会起作用吗?我尝试摆脱 JSON.parse,这似乎导致一切都失败
  • @Jackie 这个"imgUrl": "[\"https://res.cloudinary.com/dbkbp16kc/image/upload/v1403448829/img.png\"]" 是因为你是stringifying JSON。如果您需要在其他地方使用它,最好 JSON.parse(images) 同时将其设置为 #categorylist 的 val
猜你喜欢
  • 1970-01-01
  • 2013-04-22
  • 2022-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-18
  • 1970-01-01
相关资源
最近更新 更多