簡體   English   中英

讀取時轉義+字符作為ajax數據傳遞(以防止串聯)

[英]Escaping + character when read to passed as ajax data (to prevent concatenation)

我正在讀取輸入文本字段的值,並將其傳遞來用作ajax數據

字段值帶有+

<input name="someval" type="text" value="Receive (+ open)" />

並且看起來像是在解析數據時,它會將+解析為一個jquery串聯。

data: 'someval=' + $("input[name=someval]").val(),

這是我第一次注意到此行為。

  • 首先,我該如何解決。
  • 其次,我無法知道輸出何時可能具有這些特殊字符,因此是否存在一種已知的最佳實踐來轉義輸入,以便每當發生輸入時都被覆蓋?

謝謝

嘗試encodeURIComponent

'someval=' + encodeURIComponent($("input[name=someval]").val())

更好的是,讓jQuery為您處理:

data: { someval:$("input[name=someval]").val() }

jQuery將自動將您的值(和鍵)轉義為數據類型(例如"application/x-www-form-urlencoded" )的正確格式(使用jQuery.param() )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM