gpt4 book ai didi

javascript - 连字符不允许 jQuery AJAX 调用正常工作

转载 作者:搜寻专家 更新时间:2023-10-31 20:36:53 26 4
gpt4 key购买 nike

问题: 通过我的 addData() 函数传递的参数中有一个连字符;想想“12345678-9”。每当传递的数据带有连字符时,我的应用程序上就会弹出 Ajax Fail! 警告框。但是,每当我将 $_GET 变量硬编码为不带连字符的字符串或数字时,我的应用程序的这一部分就可以工作。我已将范围缩小到连字符导致此错误的可能事实。请参阅下面的代码。


HTML


<button id="add-analysis-button" onClick="addData( $( '#click-number' ).text() )">Add Data</button>

Javascript/jQuery/AJAX


function addData(a_ship) {
$.ajax({
type: 'GET',
url: 'models/add-data.php?oShip=' + a_ship,
mimeType: 'json',
success: function(data) {
alert( data );
},
error: function() {
alert('Ajax Fail!');
}
});

PHP(文件:add-data.php)


<?php
echo $_GET['oShip'];

我尝试了什么: 我尝试在 addData() 函数中使用 javascript 的替换函数,用 HTML 数字替换连字符。例如:a_ship = a_ship.replace('-', '-')。这似乎允许代码部分工作,但随后去掉了连字符后的数字,这让我陷入了另一个问题。

问题:如何在不导致错误的情况下将连字符从 传递给 jQuery 的 AJAX?

最佳答案

改变这个:

mimeType: 'json',

为此:

contentType: 'json',

-或者-

完全删除 mimeType 将解决此问题。

关于javascript - 连字符不允许 jQuery AJAX 调用正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32955442/

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