>  기사  >  웹 프론트엔드  >  양식 필드에서 여러 데이터를 가져와 json 형식으로 변환하는 방법

양식 필드에서 여러 데이터를 가져와 json 형식으로 변환하는 방법

一个新手
一个新手원래의
2017-10-18 09:55:181868검색

그림과 같이 다음 두 개의 li 태그에서 데이터를 얻은 후 백엔드로 전달해야 하며 백엔드에서 수신한 데이터 형식은 json이므로 해당 정보를 변환해야 합니다. 두 개의 li 태그를 다음 형식으로 변환합니다.

{recieverName:Xiaohong,recieverPhone:12341234,recieverAddress:Hunan, China},{recieverName:Xiaoming,recieverPhone:12345678,recieverAddress:Shanghai, China}

코드는 다음과 같습니다.

var recieverArr = [];  //全局变量
var recieverMsg = {};  //全局变量
function recieverMsgToJson(parentFormId){    //若有多个表单公用这个函数,这里需要传所属表单的ID;例如新增和修改。
  $(parentFormId + ".recieverList li").each(function(m){    //遍历每个li,当前有两个li
      var recieverAttributes = [];
      $(this).find("span").each(function(n){    //遍历每个li下的span,而每个li下有三个span
         recieverAttributes[n] = $(this).children("input").val();   //找到每个span下存放着数据的input框,并获取值存放到数组中
      });
      var recieverObj = {    //用对象来表示数据;这时对象是{recieverName:小明,recieverPhone:12345678,recieverAddress:中国上海}
         receiverName:recieverAttributes[0],
         receiverPhone:recieverAttributes[1],
         receiverAddress:recieverAttributes[2]
      };
      recieverArr.push(recieverObj);       
  });
}
recieverMsg = JSON.stringify(recieverArr).replace(/\[|]/g, '') //将数组转化为json格式
console.log(recieverMsg)
//{recieverName:小红,recieverPhone:12341234,recieverAddress:中国湖南},{recieverName:小明,recieverPhone:12345678,recieverAddress:中国上海}
  $.ajax({
    url: '',
    type: 'post',
    data: {
      receiverInfo:recieverMsg,//收件人信息
    },
    traditional:true,
    success: function(data){
      console.log(data);

    },
    error: function() {
      alert("新增订单失败")
    }
  })

위 내용은 양식 필드에서 여러 데이터를 가져와 json 형식으로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.