如何在同一页面上使用JavaScript变量

时间:2018-06-08 15:26:33

标签: javascript php jquery

我的网页上有Bootstrap标签。

在第一个标签上,给出用户是选择路线选项。用户选择路线。选择后,会发送AJAX请求以保存路由。在AJAX成功时,JavaScript关闭第一个选项卡并自动打开下一个选项卡。

在下一个标签上,我正在使用SQL select Query。查询将获取在上一个选项卡中选择的用户路由的详细信息。

如何将用户在第一个选项卡中选择的路由ID用于MySQL查询。 Select Query将类似于SELECT * routedetails,其中RouteID =?。如何更换?使用路径ID

用户选择路线时;这是JavaScript。

                $(document).ready(function () {

                    // capture the ID of clicked route
                    $(".collection-routeselection").click( function(){
                        route_id = $(this).attr("value");

                        jQuery.ajax({
                            url: '../data/collecting.php?action=route-selection',
                            type: 'POST',
                            dataType: 'text',
                            data: {'routeid':route_id},
                            success: function(data, textStatus, jqXHR) {
                                $("#tab1").removeClass("active");
                                $("#tab2").addClass("active");
                            },
                            error: function(jqXHR, textStatus, errorThrown){
                                //Display error message to user
                                alert("An error occured when saving the data");
                            }
                        });

                    });

                });

如您所见,在Ajax成功中,我关闭当前选项卡并打开下一个选项卡。

这是同一页面上的SELECT查询,但在不同的选项卡中。我希望将结果基于所选路线。

FROM *routedetails WHere id_rou =?

如何在WHERE子句的PHP SQL语句中使用JavaScript变量(包含路由ID)。

修改

  case 'route-selection':


        $insert_web1 = $mysqli_scs->prepare("INSERT INTO collectiontracking_ctr (idrou_ctr,tab_ctr,created_ctr,modified_ctr) VALUES (?,'tab1',CURRENT_TIMESTAMP,CURRENT_TIMESTAMP)");

         //bind paramaters
        $rouid = "";
        if (isset($_POST['routeid'])) {

            $rouid = $_POST['routeid'];

        }

        $insert_web1->bind_param("i",$rouid);

        //Execute the statement
        $insert_web1->execute();



        //Echo the results so application can proceed
        echo '{"success":"true"}';
        break;

2 个答案:

答案 0 :(得分:0)

你试过了吗?

<?php
    $routeId = $_REQUEST["routeid"];
?>

答案 1 :(得分:0)

$(this).attr("value");应为$(this).val()

value属性是HTML中输入的原始默认值。 .val()获取用户已编辑的value属性。