Cloud VGP
Cloud VGP

Reputation: 3

Javascript postback running BUT NOT returning values in bootstrap 4

Am running into a problem with my postback javascript function in ASP / BootStrap environment. I have searched stackoverflow for a solution, I couldn't find any that resolved my problem.

My problem is the following: when I Onclick an image, the page reload (it appears that the post back works) bit it's not returning any value for that post back.

In my example, onclick="__EVENTSPARAM('events_insertmaintenance','10774'); should execute a specific code.

Sub insertmaintenance() 
    id = request("events_insertmaintenance")
    blablabla
end sub 

My request("events_insertmaintenance") is returning null value, but in my example it should return 10774.

Here is the code. I removed extra blabla to make it short but it will gave you an idea about my page code structure.

<!DOCTYPE html>
<html dir="ltr" lang="en">

<head>
    <meta charset="iso-8859-1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <!-- Tell the browser to be responsive to screen width -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <!-- Favicon icon -->
    <link rel="icon" type="image/png" sizes="16x16" href="bootstrap/assets/images/favicon.png">
    <title>Cloud VGP</title>
    <!-- Custom CSS -->
    <link href="bootstrap/assets/extra-libs/c3/c3.min.css" rel="stylesheet">
    <link href="bootstrap/assets/libs/chartist/dist/chartist.min.css" rel="stylesheet">
    <link href="bootstrap/assets/extra-libs/jvector/jquery-jvectormap-2.0.2.css" rel="stylesheet" />
    <!-- Custom CSS -->
    <link href="bootstrap/dist/css/style.min.css" rel="stylesheet">
    <link href="bootstrap/assets/extra-libs/datatables.net-bs4/css/dataTables.bootstrap4.css" rel="stylesheet">
    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
        <![endif]-->
    <style>

    </style>
</head>

<body>

    <form id="Form_ID" name="Form_ID" method="POST" action="Shopa_VGP_Customers_Init.asp?which=5685&idfield=contactid&table=customers&database=&xtab=2">

        <img name="events_insertmaintenance" id="events_insertmaintenance" src="images/ConfigurationTools.png" **onclick="__EVENTSPARAM('events_insertmaintenance','10774');**">

            <input type="hidden" id="IsPageLoaded" name="IsPageLoaded" value="1" />
            <input type="hidden" id="Events_Name" name="Events_Name" value="" />
            <input type="hidden" id="Param_Events" name="Param_Events" value="" />
            <input type="hidden" name="which" value="5685" />
            <input type="hidden" name="table" value="customers" />
            <input type="hidden" id="frm_Inspections_xString" name="frm_Inspections_xString" value="0" />
            <input type="hidden" id="frm_Invoices_xString" name="frm_Invoices_xString" value="0" />
    </form>


    <script src="bootstrap/assets/libs/jquery/dist/jquery.min.js"></script>
    <!-- Bootstrap tether Core JavaScript -->
    <script src="bootstrap/assets/libs/popper.js/dist/umd/popper.min.js"></script>
    <script src="bootstrap/assets/libs/bootstrap/dist/js/bootstrap.min.js"></script>
    <!-- apps -->
    <script src="bootstrap/dist/js/app-style-switcher.js"></script>
    <script src="bootstrap/dist/js/feather.min.js"></script>
    <!-- slimscrollbar scrollbar JavaScript -->
    <script src="bootstrap/assets/libs/perfect-scrollbar/dist/perfect-scrollbar.jquery.min.js"></script>
    <script src="bootstrap/assets/extra-libs/sparkline/sparkline.js"></script>
    <!--Wave Effects -->
    <!-- themejs -->
    <!--Menu sidebar -->
    <script src="bootstrap/dist/js/sidebarmenu.js"></script>
    <!--Custom JavaScript -->
    <script src="bootstrap/dist/js/custom.min.js"></script>
    <!--Toasts -->
    <script type="text/javascript">
        $('.toast').toast('show');
    </script>
    <!--DataTables -->
    <script src="bootstrap/assets/extra-libs/datatables.net/js/jquery.dataTables.min.js"></script>
    <script src="bootstrap/dist/js/pages/datatable/datatable-basic.init.js"></script>
    <script src="bootstrap/assets/extra-libs/prism/prism.js"></script>

    <script language="javascript">
        var theForm = document.forms['Form_ID'];
        if (!theForm) {
            theForm = document.Form_ID;
        }
        var __SETVALUE = function() {
            for (var i = 0; i < (arguments.length); i = i + 2) {
                $(arguments[i]).value = arguments[i + 1];
            }
        }
        var __EVENTS = function(_events_name) {
            $('Events_Name').value = _events_name;
            theForm.submit();
        }
        var __EVENTSPARAM = function(_events_name, _events_param) {
            $('Events_Name').value = _events_name;
            $('Param_Events').value = _events_param;
            theForm.submit();
        }
        var __CONFIRM = function(_text) {
            return confirm(_text);
        }
        var __DOPOSTBACK = function() {
            for (var i = 0; i < (arguments.length); i = i + 2) {
                $(arguments[i]).value = arguments[i + 1];
            }
            theForm.submit();
        }

        if ($('div_id_inspections') != null) {
            setTimeout("$('div_id_inspections').scrollTop=0", 0);
        }
        if ($('div_id_factures') != null) {
            setTimeout("$('div_id_factures').scrollTop=0", 0);
        }
    </script>

    <script>
        datePickerController.createDatePicker({
            formElements: {
                "dp_datefacture": "%d/%m/%Y"
            }
        });
    </script>

</body>

</html>

Upvotes: 0

Views: 117

Answers (1)

Cloud VGP
Cloud VGP

Reputation: 3

well i found the solution. i guess it's because my customer script uses var $ which may be inconflict with the one that jquery uses.

i changed in my custom script the var $ to var MyVal and it works great

Upvotes: 0

Related Questions