-3

当用户将数据插入第一页并转到下一页时,我有两个带有相似文本框的页面,如果他需要提供相同的数据,则添加一个复选框,当用户单击它时,必须在页面之前的会话中相同的数据通过ajax进入第二页变量。有人能帮助我吗。谢谢

4

2 回答 2

1

对评论的回应

我制作了示例代码,它将让您了解如何做到这一点。

复选框更改事件的 jQuery 代码

$(function(){

    $('input:checkbox').change(function(){

        if($(this).is(':checked'))
        {
            $.ajax({
                url : 'script.php',
                success : function(session)
                {
                    $('input:text').val(session);
                }
            });
        }

    });

});

HTML

<input type="text" />
<input type="checkbox" />

脚本.php

<?php
session_start();

echo $_SESSION['name_of_the_session_variable'];
exit;
?>

编辑

$("#checked").click(function()
{
    if ($(this).is(':checked'))
    {   
        $('#provisional_total_public_funding').val(<?php echo empty($this->session->store['actual_info']['actual_total_public_funding']) ? '' : $this->session->store['actual_info']['actual_total_public_funding']; ?>);
    }
});

Ajax 请求响应

<select name="fin_year" id="fin_year">
    <option value="" >Please select an year</option>
    <option value="<?= $actFinYr; ?>"><?= $actFinYr; ?></option>
</select>

<script type="text/javascript">

    $(function(){

        $('#fin_year').change(function()
        {
            var options = $(this);
            if(options.val() != '')
            {
                $.ajax(
                {
                    url     : 'CODEIGNITER_HTTP_URL/'+options.val(),
                    beforeSend : function()
                    {
                        //show loading
                    },
                    success : function(response)
                    {
                        //play with the response from server.
                    }
                });
            }
        });

    });

</script>
于 2013-08-21T06:27:44.980 回答
0

我会像这样使用jQuery:

HTML 第 1 页:

input1 <input type="text" id="input1" name="input1"/>
input2 <input type="text" id="input2" name="input2"/>

jQuery第一页:

$input1 = $("#input1");
$input2 = $("#input2");
$input1.keydown(function(){
    $.post("yourPHP.php", {input1: $input1.val()});
});
$input2.keydown(function(){
    $.post("yourPHP.php", {input1: $input1.val()});
});

PHP第一页:

if(session_id() == '') {
    session_start();    
}
if(isset($_POST['input1'])){
    $_SESSION['input1'] = $_POST['input1'];
}
if(isset($_POST['input2'])){
    $_SESSION['input2'] = $_POST['input2'];
}

HTML第二页:

input1 <input type="text" id="input1" name="input1"/>
input2 <input type="text" id="input2" name="input2"/>
<br/>
radio1 <input type="radio" id="radio1" name="radio"/>
radio2 <input type="radio" id="radio2" name="radio"/>

jQuery第二页:

$input1 = $("#input1");
$input2 = $("#input2");
$radio1 = $("#radio1");
$radio2 = $("#radio2");
$radio.click(function(){
    $.post("yourPHP.php", {request: "input1"}, function(data){
        $input1.val(data);
    });
});
$input2.keydown(function(){
    $.post("yourPHP.php", {request: "input2"}, function(data){
        $input2.val(data);
    });
});

PHP第二页:

if(session_id() == '') {
    session_start();    
}
if(isset($_POST['request'])){
    switch($POST['request']){
        case 'input1':
            echo $_SESSION['input1'];
            break;  
        case 'input2':
            echo $_SESSION['input2'];
            break;
    }
}

我希望它有效。

于 2013-08-21T06:45:21.657 回答