我有自己制作的票务系统,最近我发生了令人烦恼的事情。发生的事情是,有时在回复时,所有空格都被+号替换。到目前为止,它只发生在最近,只发生在某些消息上,所以不是全部。我还没有能够在消息中发现特殊情况或特征。
代码如下:
$(document).on('submit', '#newticket, #addreply', function () {
$(".loadingadd").show();
var eid = $(this).attr("id");
var xform = $(this).serialize();
$("#"+eid+" :input").prop("disabled", true);
$.ajax({
type: "POST",
url: "/a/tickets",
dataType: "json",
data: xform,
success: function(data) {
表格:
<form class="form-inline" role="form" action="" method="post" id="addreply">
我使用的是Firefox 50.1.0。
我无法在Firebug中捕获事件,所以服务器端有可能造成它,但我怀疑它是因为它不是每次都发生。
有谁知道浏览器是否可以决定对邮件进行urlencode?或者我应该始终在JS和解码服务器端编码?如果是这样,如何使用序列化?
How to encode value with jquery serialize?
我看到了这个,但我目前没有这个,但我有时只有+符号。并且没有替换删除有效+使用?
基本上我现在只是使用序列化来发送表单,并使用$ _POST [&#39; message&#39;]来获取内容,而不使用任何解码或编码。
或者我应该指定一个enctype?如果我阅读http://www.w3schools.com/tags/att_form_enctype.asp,那么在使用multipart / form-data时,+符号才会被替换?
任何人都知道这里有什么,我应该用什么表格,ajax编码和服务器端(php)解码?什么是最佳实践?