Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为一个输入字段提交多个值_Javascript_Jquery - Fatal编程技术网

Javascript 为一个输入字段提交多个值

Javascript 为一个输入字段提交多个值,javascript,jquery,Javascript,Jquery,我想做什么: 我正在尝试构建一个非常简单的可视化布局生成器。 其思想是,用户选择一个块,其中包含一些设置,这些设置值存储在隐藏输入中,当用户保存页面时,我将这些值存储在数据库中 基本块正常: 例如,用户选择一个“文本”块,其添加方式如下: <div> <input type="hidden" value="text" name="item_name[]"> <input type="hidden" value="" name="item_title[

我想做什么:

我正在尝试构建一个非常简单的可视化布局生成器。 其思想是,用户选择一个块,其中包含一些设置,这些设置值存储在隐藏输入中,当用户保存页面时,我将这些值存储在数据库中

基本块正常:

例如,用户选择一个“文本”块,其添加方式如下:

<div>
    <input type="hidden" value="text" name="item_name[]">
    <input type="hidden" value="" name="item_title[]">
    <input type="hidden" value="sdsd" name="item_text[]">
</div>

问题:

但是,某些块的每个字段都有多个值。例如,“gallery”块,它有多个图像URL、图像标题等。我在寻找合适的方法将多个值组合在一起并提交时遇到了问题

现在我用jQuery将它们添加到一个字符串中,用_u分隔。我可以存储数据并将其分离,但问题是如果我想从中删除任何图像,这是非常困难的,因为我刚刚将它们添加到字符串中,因此很难找到它并删除它

<div>
text item
<input type="hidden" value="gallery" name="item_name[]">
<input type="hidden" value="__http://img1.jpg__http://img2.jpg" name="img_path[]">
<input type="hidden" value="__img1__img2" name="img_title[]">
<input type="hidden" value="" name="img_desc[]"></input>
</div>

文本项
问题:

对于上面的块示例,发送多个值的合适方式是什么,记住将有多个块具有多个输入值

谢谢

  • 建立一个包含所有价值观的团队
  • 转换
  • 提交JSON作为隐藏字段的值
  • 在服务器端,使用PHP函数将JSON转换为PHP对象或数组
  • 建立一个包含所有价值观的团队
  • 转换
  • 提交JSON作为隐藏字段的值
  • 在服务器端,使用PHP函数将JSON转换为PHP对象或数组

  • 删除一个应该不太难,可以在jQuery中使用
    .split()
    将其转换为数组,然后
    .splice()
    删除所需的设置?将这些设置存储在数组中,而不是隐藏输入?你的jQuery在哪里?@anOG-我认为他试图以某种方式跨页面持久化数据。删除一个数据应该不会太难,你可以在jQuery中使用
    .split()
    将其转换为一个数组,然后
    .splice()
    删除你想要的数据?将这些设置存储在数组中,而不是隐藏输入?你的jQuery在哪里?@anOG-我认为他试图以某种方式跨页面持久化数据。