首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Jquery变量传递给php url

将Jquery变量传递给php url
EN

Stack Overflow用户
提问于 2016-07-21 00:40:49
回答 2查看 1.4K关注 0票数 1

我有一个jquery函数,如下所示:

代码语言:javascript
复制
$('.dislike_box a').click(function(event){
    event.preventDefault();
    var title = $(this).data('title');
    alert(title);
    $.ajax({
    url: 'vote.php?vote=dislike&title=title', 
    success: function(result){
        $('.dislike_box p.vote_text').text('Dont Like it.');
    }});
});

我的问题是,当我警告标题变量时,它是正确的,但当我将它传递给php脚本放入数据库时,php脚本使用$_GET[]方法,但将文字字符串“标题”而不是变量值放入数据库。

回答:感谢@Ivan

代码语言:javascript
复制
 url: 'vote.php?vote=dislike&title='+title, 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-21 00:43:48

通过AJAX发送的变量不是变量,而是字符串“title”。改为使用+将变量添加到URL中。

代码语言:javascript
复制
$('.dislike_box a').click(function(event){
    event.preventDefault();
    var title = $(this).data('title');
    alert(title);
    $.ajax({
    url: 'vote.php?vote=dislike&title='+title, 
    success: function(result){
        $('.dislike_box p.vote_text').text('Dont Like it.');
    }});
});

要在PHP文件中检索js变量:

代码语言:javascript
复制
<?php

if(isset($_REQUEST['title'])) {
    $title = $_REQUEST['title'];
}
票数 1
EN

Stack Overflow用户

发布于 2016-07-21 00:50:43

您将在AJAX调用中发送文字字符串title。你需要把你的title值放入你的URL中。

一个更好的解决方案是,如果你让jQuery转义值,所以你不需要担心,如果你的标题包含特殊字符,如?&=等。

代码语言:javascript
复制
$('.dislike_box a').click(function(event){
    event.preventDefault();
    var title = $(this).data('title');
    alert(title);
    $.ajax({
        url: 'vote.php',
        data: {
            vote: 'dislike',
            title: title
        }, 
        success: function(result){
            $('.dislike_box p.vote_text').text('Dont Like it.');
        }
    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38486204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档