Javascript Firefox 3.6上的Jquery.parseJSON兼容性
我对以下代码片段有问题:Javascript Firefox 3.6上的Jquery.parseJSON兼容性,javascript,jquery,json,Javascript,Jquery,Json,我对以下代码片段有问题: $.ajax( { type: "POST", url: "AjouterAttribut.php", data: { val: valvaleur, table: nomvaleur } }).success(function(message) { var rep = $.trim(message); if (rep == '-') { $.unblockUI(); alert("Cet
$.ajax(
{
type: "POST",
url: "AjouterAttribut.php",
data: { val: valvaleur, table: nomvaleur }
}).success(function(message)
{
var rep = $.trim(message);
if (rep == '-')
{
$.unblockUI();
alert("Cet enregistrement existe déjà");
}
else
{
var Tableau = jQuery.parseJSON(rep);
boutonappuye.prev().find('option').remove();
boutonappuye.next().attr("disabled", "true");
boutonappuye.next().find('img').attr('src', 'images/Supprimer_nonactif.png')
for (var i=0; i< Tableau.length; i++)
{
boutonappuye.prev().append("<option value="+ Tableau[i][0] +">" + Tableau[i][1] + "</option>");
}
$.unblockUI();
}
});
这适用于Firefox12。但是,我需要使它在Firefox3.6上兼容。令我非常沮丧的是,javascript在那里崩溃了。我试着在该行之前对rep变量的内容发出警报。它给出了:
[["1","Etudiant"],["3","Etudiant privilege"],["2","Professeur"],["7","wrerew"]]
如果我更改上述代码行:
var Tableau = jQuery.parseJSON('[["1","Etudiant"],["3","Etudiant privilege"],["2","Professeur"],["7","wrerew"]]');
它起作用了。我甚至不知道为什么把变量放在函数中会导致它崩溃
谢谢~编码有问题,我的php文件是用UTF-8编码的,带有BOM。必须对其进行编码。尝试将rep转换为字符串,但没有成功,在解析json后,它会将我的Tableau变量保留为空。尝试将ajax调用的数据类型转换为json,仍然没有结果。Firefox 3.6几天后就正式失效。你不应该再支持它了!
var Tableau = jQuery.parseJSON('[["1","Etudiant"],["3","Etudiant privilege"],["2","Professeur"],["7","wrerew"]]');