我固定的一些客戶端的代碼,他結合形式的輸入值組合成隱藏輸入並提交,這是一個簡單的示例代碼火狐由「 1」失蹤字符串以「 1」
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<button id="btn">send</button>
<form name="test" id="test" method="post" action="test.php">
<input type="hidden" name="a" value="test">
<input type="hidden" name="b" value="123">
<input type="hidden" name="result" id="result">
</form>
<script>
var form = document.getElementById('test'),
str = '';
for (i = 0; i < form.length; i++) {
str += encode(form.elements[i].value + "\1";
}
result = str.split("\1");
document.getElementById('result').value = (result.join("\1"));
form.submit();
</script>
</body>
</html>
Chrome和IE會很好,但即使我確信組合字符串是正確的,Firefox也只會獲得第一個值。
因爲它是一個很大的項目,我只是幫助解決這樣的錯誤,所以我不能改變太多的代碼,以防萬一網站的其他部分可能會崩潰,所以我真的需要弄清楚爲什麼Firefox打破由「\ 1」組合的值。
'\ {數值}'是一個轉義序列。加倍掩蓋反斜槓... – CBroe