-4

我需要单击一个图像,它应该运行一些设置 php 变量并重新加载同一页面的 php 脚本。

我知道这听起来很简单,但我已经尝试了我能想到的每一种不同的方式,我猜这只是我错过的一些基本的东西。

我已经尝试过点击图像、href 和 onclick,使图像成为表单的“提交按钮”等。

任何回应将不胜感激。

<a href="#" class='lang'><img src="/images/flags/it.png" alt="it_IT" /></a>
<a href="#" class='lang'><img src="/images/flags/fr.png" alt="fr_FR" /></a>     

我希望图像 alt 值通过它,如何可能请给出一些想法..

4

3 回答 3

1

尝试这个:

假设您要更改的 PHP 变量是$my_var

像这样设置它:

if(isset($_GET['VarValue']) And !empty($_GET['VarValue'])){
//if it is passed and not empty store it
$my_var = $_GET['VarValue'];
}
else{ die(''); }//else don't let them display the page.  

在图像中放一On Click Listener顶帽子调用这个函数PHP_var();

在 JavaScript 中添加这个函数:

function PHP_var(){
location = "?VarValue=The_Value_That_You_Want_To_Set";
}

当您第一次调用此页面时,URL 必须是这样的(假设它是http://www.example.com/script.php?VarValue=The_First_Valeu_Of_Variable)。

该函数将更改 VarValue 值并重新加载页面

于 2013-09-04T10:21:21.287 回答
0

使用 onclick="ajaxFunctionName()" 调用执行脚本的 ajax 函数

<a href="javascript:;" onclick="ajaxFunctionName()" class='lang'><img src="/images/flags/it.png" alt="it_IT"/></a>
<a href="javascript:;" onclick="ajaxFunctionName()" class='lang'><img src="/images/flags/fr.png" alt="fr_FR"/></a>

function ajaxFunctionName() {
    $.post({
      var lang = $( this ).children('img').attr('alt');
      url: "script.php?lang="+lang
    }).done(function() {
      // do something
    });
}

或者

<img class='lang' src="/images/flags/it.png" alt="it_IT"/>

$('.lang').click(function(){
    $.post({
      var lang = $( this ).attr('alt');
      url: "script.php?lang="+lang
    }).done(function() {
      // do something
    });
});
于 2013-09-04T09:22:03.593 回答
0

尝试

 $('.lang img').on('click',function(){
    var lang = $(this).attr('alt');
    var postdata = 'lang='+lang;

    $.ajax({
            type:'POST',
            data:postdata,
            url:'process/yourscript.php',
            success:function(data){
                // more processing here
            }
        });

    return false;
});
于 2013-09-04T09:55:02.057 回答