第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js修改拼接字符串為特定格式

js修改拼接字符串為特定格式

白衣染霜花 2018-08-27 16:34:12
現(xiàn)在有一個URL需要拼成白班:2:3:5,夜班:3:4:6這種格式,是動態(tài)增刪生成的,這是兩行數(shù)據(jù),每行中間用逗號分隔,直接取的表單里面的值。但是我用$("#form1").serialize()只能得到a=白班&b=2&c=3&d=5&a=夜班&b=3&c=4&d=6這種樣子的數(shù)據(jù)。請問有什么辦法能變成上面需要的樣子嗎?<form id="form1">     <label>工作種類:</label>     <select name="a">         <option>白班</option>         <option>夜班</option>     </select>     <input type="text" name="b" value="2">     <input type="text" name="c" value="3">     <input type="text" name="d" value="5"></form>我的想法是替換&符號然后拆開,刪掉每個部分的前兩個字符,最后再重新拼起來,但是怎么也拼不出來:var cc=$("#form1").serialize();//針對多行的時候cc='a=白班&b=2&c=3&d=5&a=夜班&b=3&c=4&d=6';var dd=cc.replace(/=/g,""); //去掉等于號var bbb=dd.split(":");//從冒號開始拆分for(var i in bbb) {//往下就出錯了     var ccc=bbb[i];    var ddd=ccc.slice(2);    var str="";     console.log(str.concat(ddd)); };有人推薦用正則,但是正則對于多行的時候好像就沒有辦法很好的拼接了,我的name是可以為a-z的字母的,最后在拼出來的url里面是不需要name的。
查看完整描述

1 回答

?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗 獲得超12個贊

其實正則是最優(yōu)解。

2333,手動滑稽。

var a="a=白班&b=2&c=3&d=5";
a.replace(/(\&?)(\w*\=)/g, (a, b) => { return b ? ':' : '' });

更新
應(yīng)題主的要求

var a="a=白班&b=2&c=3&d=5&a=夜班&b=2&c=3&d=5";
a.replace(/(\&?)(\w*\=)([\w|\u4e00-\u9fa5]*)/g, (a, b, c, d) => {  if (d === '夜班') return ',' + d;  return (b ? ':' : '') + d
});


查看完整回答
反對 回復(fù) 2018-10-30
  • 1 回答
  • 0 關(guān)注
  • 682 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號