我以前见过这个问题,但没有人真的回答过这个问题。 所以我的问题是我有一个ajax请求,它从文本字段中获取值,格式为:00000000 / relay_1A 但是当我尝试提交时,我会收到404错误。但是如果我做了00000000%2frelay_1A就可以了。我理解%2f = /但我不能让我的用户使用该格式来获得正确的结果。那么有没有办法让文本字段自动将/转换为后端的%2f。
<div id="input_controlGet" style="display:none">
<div class='col-md-2'>
<br>
<div class="panel panel-default" id="input_ControlGetmac">
<div class="panel-heading" id="header_ControlGetmac">
Mac Address
</div>
<input id="login_ControlGetmac" type="text" class="form-control input-normal">
</div>
<div class="panel panel-default" id="input_ControlGetpoint">
<div class="panel-heading" id="header_ControlGetpoint">
Point Input
</div>
<input id="login_ControlGetpoint" type="text" class="form-control input-normal" placeholder="Fill In">
</div>
<button type="submit" class="btn btn-primary" id="sumbit_controlGet">Submit</button>
</div>
</div>
$('#sumbit_controlGet').on 'click', ->
username = $('#login_username').val()
password = $('#login_password').val()
mac_id = $('#login_ControlGetmac').val()
point = $('#login_ControlGetpoint').val()
$.ajax
type: "GET"
url: start_url + mac_id + "/control/" + point
dataType: "json"
crossDomain: true
cache: false
beforeSend: beforeSend(username, password)
答案 0 :(得分:1)
您可以使用decodeURIComponent()
执行此操作:
var x = "00000000%2frelay_1A";
alert(decodeURIComponent(x)); // = '00000000/relay_1A'
或encodeURIComponent()
重新编码:
var x = "00000000/relay_1A";
alert(encodeURIComponent(x)); // = '00000000%2frelay_1A'