gpt4 book ai didi

javascript - 何时转义使用 AJAX 发送的数据

转载 作者:行者123 更新时间:2023-11-30 17:43:48 24 4
gpt4 key购买 nike

我需要对通过 AJAX 输出的文本进行转义。如果我向数据库提交脚本,比如 <script>alert('hello world');</script> , 然后在页面上执行弹出。

这是我的函数,它设置数据,然后抓取要通过 AJAX 发送的数据。

function add_order() {
if($_SERVER['REQUEST_METHOD'] == "POST") {
$add_order = $this->order_model->set_order($_POST['text']);
if($add_order==false){
echo "fail";
return false;
}
$order_data = $this->order_model->get_order_by_id($add_order);
echo json_encode($order_data);
return true;
}
}

J查询代码:

$('#create_order').submit(function(){
$.post('/order/add_order/', $('#create_order').serialize(), function(data){
var obj = $.parseJSON(data);
var obj_item = obj[0];
$('tr.'+obj_item.id).append("<td>" + obj_item.text + "</td>");
msg('success', 'Part #'+obj_item.number+' has been successfully created');
});
}
return false;
});

如何阻止 obj_item.text 执行脚本?

最佳答案

您需要构建 DOM 元素并设置文本而不是构建 HTML:

$("<td />", { text: obj_item.text }).appendTo('tr.tr.' + obj_item.id);

关于javascript - 何时转义使用 AJAX 发送的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20527716/

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