【问题标题】:including links not working in jquery getJSON post包括在 jquery getJSON 帖子中不起作用的链接
【发布时间】:2014-08-08 21:59:42
【问题描述】:

当我发出以下命令时:

var msg = 'http://link.com';
var url = localPath + 'app/messages/save?msg='+encodeURIComponent(msg);
jQuery.getJSON(url,function(){});

它没有保存在我的 PHP 到 MySQL 后端代码中。

似乎只有使用链接才有这个问题。

当我这样做时很好:

var msg = 'Hey Bob!';
var url = localPath + 'app/messages/save?msg='+encodeURIComponent(msg);
jQuery.getJSON(url,function(){});

【问题讨论】:

  • 当你使用 msg=link.com 时,它会与 localPath 变量 @jkushner 一起折叠
  • @sany2k8 我不明白你在说什么。你能在答案中解决问题吗?
  • 我只是指出,你的 localPath 变量是什么?它是否包含 'http://' 或任何其他字符串,如 'Hey Bob!'
  • @sany2k8 它只是一个变量,其中包含供我使用的 url,具体取决于我所在的环境。这并不重要。重要的是我不能使用 jquery 通过 ajax 将链接传递到我的 php 后端并将其保存在数据库中

标签: jquery ajax url hyperlink


【解决方案1】:

尝试这种方式使用jquery getJson方法发送链接到服务器端,代码未经测试。

var url = "http://www.link.com/"

//if it is a url string escape it
if (url.split("http://").length > 1) 
{ 
    var mydata=escape(url);
}
else 
{
    var mydata=url; //if not string no need to escape it
}

 $.getJSON('http://address.com/messages.php', { url:mydata }, function(data) {
    // other code here
 });

  OR

 $.getJSON('http://address.com/message.php?url='+mydata, function(data) {
    // some code here
 });

最后使用$mydata = $_GET['mydata']或在messgages.php中访问它

$_REQUEST['mydata'];

【讨论】:

  • 现在我正在考虑使用转义,但是有时消息不是 url,所以我应该使用 encodeURIComponent?您能否更新您的问题以处理其是否为 url 的逻辑?
  • 抱歉@jkushner 回复晚了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-05-17
  • 2017-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-22
相关资源
最近更新 更多