在編寫javascirpt程序過程中,用$.post方法發送數據,若數據中字符含有’<‘,將導致$.post無法成功執行。
var jsonstr='{"value":"abcd<efg"}';
$.post(
        url,
        { "jsonstr": jsonstr },
      function (data, status) {
});

需要將其轉義後再使用,使用下面的transferredChars函數轉義後,再傳遞數據$.post即能執行。

此函數使用將'<'和‘>'分別替換爲’&lt;'和‘&gt;'。

transferredChars=function (htmlChars) {
  var tcs = htmlChars.replace(/</g, "&lt;");
  tcs = tcs.replace(/>/g, "&gt;");
  return tcs;
}


var jsonstr='{"value":"abcd<efg"}';
jsonstr=transferredChars(jsonstr);
$.post(
        url,
        { "jsonstr": jsonstr },
      function (data, status) {
});


使用的jquery版本爲1.7.1.min


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章