我有一个 php 代码,它从 URL 参数中捕获一个变量,并通过一个 html edditbale 文本字段将其传递给 Jquery/Ajax,然后再传递给一个将其传递给我的 Firebird DB 的外部 php 代码。问题是 jquery/ajax 正在将 ä 之类的字符更改为 ä 等等。
首先,我认为我必须使用 ISO8859_1(该表正在使用)位对 firebird SQl 更新进行编码,然后我发现它正在更改字符的 Jquery。
这是我的代码:
?>
<div id="wrap">
<h3>Comment</h3>
<div id="status"></div>
<div id="content">
<div id="editable" contentEditable="true">
<?php
echo $row[21];
?>
</div>
<button id="save">Save</button>
</div>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$("#save").click(function (e) {
var content = $('#editable').html()
var nr = <?php echo $s; ?>;
$.ajax({
url: 'save.php',
type: 'POST',
data: {
content: content,
nr: nr
},
success:function (data) {
if (data == '1')
{
$("#status")
.addClass("success")
.html("Data saved successfully")
.fadeIn('fast')
.delay(3000)
.fadeOut('slow');
}
else
{
$("#status")
.addClass("error")
.html("An error occured, the data could not be saved")
.fadeIn('fast')
.delay(3000)
.fadeOut('slow');
}
}
});
});
$("#editable").click(function (e) {
$("#save").show();
e.stopPropagation();
});
$(document).click(function() {
$("#save").hide();
});
});
</script>