gpt4 book ai didi

带有特殊字符的 JQuery AJAX POST 请求

转载 作者:行者123 更新时间:2023-12-01 03:41:27 26 4
gpt4 key购买 nike

我在使用 JQuery AJAX 发送数据的管理页面上遇到问题,但它不处理 & 或 ",原因很明显(它们破坏了数据字符串/url)。

使用 Javascript 发送允许这些字符的数据的正确方法是什么?使用数据数组可以解决 & 但它会解决 "吗?

必须可接受的示例输入:执行此操作并按“输入”

function SaveCombinations() {
var priority = 0;
$("#sort li").each(function() {
$.ajax({"url": "lib/sc-save.php", "data": "id="+this.id+"&name="+$(this).find("input").val()+"&priority="+priority, "type": "POST",
"success": function() {}});
priority++;
});
}

最佳答案

将您的数据作为对象传递,我们将为您处理:

function SaveCombinations() {
var p = 0;

$('#sort li').each(function(){
var $id = this.id,
$name = $(this).find('input').val(),
$priority = p, // you don't really need to do this, its just a maintainability thing in case it changes in the future
$data = {id:$id,name:$name,priority:$priority};

$.ajax({
type:'POST',
url:'lib/sc-save.php',
data:$data
}).done(function(){
p++;
});
});
}

沿着这些思路的东西应该既可以解决您的问题,又可以更容易阅读/维护。

编辑

正如有人指出的,索引已经由 .each() 函数为您处理。

function SaveCombinations() {
$('#sort li').each(function(i){
var $id = this.id,
$name = $(this).find('input').val(),
$priority = i,
$data = {id:$id,name:$name,priority:$priority};

$.ajax({
type:'POST',
url:'lib/sc-save.php',
data:$data
});
});
}

这对于实现来说也很好。

关于带有特殊字符的 JQuery AJAX POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19548395/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com