1

我从 jQuery 和 AJAX 开始,并尝试将第 2 页的值传递到第 1 页,但我没有使用这个脚本

脚本:

function prova()
    {
    var parametro = $("#nome_privato").val();
    $.ajax({
        url: "./ProvaAJAX.php",
        type: "GET",
        data: "parametro="+parametro,
        dataType: "html",
        success: function( response )
        {
            alert(response);
        },
        //error: function (){}
        });
    }

选择:

    <select onChange='prova()'>
<input type='text' id='nome_privato'>

“./ProvaAJAX.php”:

<?php
    $_GET['parametro'];
    echo "il parametro è".$_GET['parametro'] ;
?>

我认为也可能是语法错误,因为 javascript 在我页面的其他部分被禁用...

4

4 回答 4

2

尝试改变

data: "parametro="+parametro,

至:

data: {'parametro': parametro},

您也不需要$_GET['parametro'];php 脚本中的行,只需要 echo 行。


在较新的浏览器中不是一个大问题,但您还应该删除后面的逗号:

    success: function( response )
    {
        alert(response);
    },

编辑

见本的回答,我是瞎子。

于 2013-09-03T09:58:33.410 回答
1

JS

function prova()
    {
    var parametro = $("#selectid").val();
    $.ajax({
        url: "./ProvaAJAX.php",
        type: "GET",
        data: "parametro="+parametro,
        dataType: "html",
        success: function( response )
        {
            alert(response);
        },
        //error: function (){}
        });
    }

HTML

<select id="selectid" onChange='prova()'>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

PHP

<?php
    echo "il parametro è".$_GET['parametro'] ;
?>

您没有正确使用选择器。

于 2013-09-03T10:03:58.793 回答
0

你能检查一下这个选择器 val :

<select onChange='prova()' id="nome_privato">

从 var parametro = $("nome_privato").val(); 用了这个

$("#nome_privato").val();

function prova()
{
var parametro = $("#nome_privato").val();
$.ajax({
    url: "ProvaAJAX.php",
    type: "GET",
    data: "parametro="+parametro,
    dataType: "html",
    success: function( response )
    {
        alert(response);
    },
    //error: function (){}
    });
}
于 2013-09-03T10:07:20.543 回答
-1

Ajax 调用的数据选项应该是要转换为正确 GET 参数的对象,即data: {parametro: $("nome_privato").val()}

于 2013-09-03T09:59:48.843 回答