用JS解析URL

时间:2016-07-14 15:00:57

标签: javascript jquery html

我正在试图弄清楚为什么我的网页没有按预期工作(即使之前有效)。

这是页面: http://www.taconic.com/resources/webinars/archive/hla-transgenic-mice-development-validation-and-applications.html

当您提交表单,联系人消失并且视频显示时,使用URL参数设置此页面上的功能。

这是我的JS(以及此页面的样式代码):

    <style>
    .dynamic-content {
        display:none;
    }
    </style>
    <script src="//code.jquery.com/jquery-1.12.0.min.js"></script>
    <script type="text/javascript">
        // Parse the URL parameter
        function getParameterByName(name, url) {
            if (!url) url = window.location.href;
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
        }
        // Give the parameter a variable name
        var dynamicContent = getParameterByName('webinar');

         $(document).ready(function() {

            // Check if the URL parameter is hla
            if (dynamicContent == 'yes') {
                $('#yes').show();
            } 
            // Check if the URL parmeter is empty or not defined, display   default content
        else {
            $('#default-content').show();
        }
    });
</script>

在提交表单时,将用户重定向到http://www.taconic.com/resources/webinars/archive/hla-transgenic-mice-development-validation-and-applications.html?webinar=hla

2 个答案:

答案 0 :(得分:0)

你的url参数是“hla”,你的if语句表示如果url参数等于“是”而不是显示电影。

所以“是”和“hal”永远不会匹配。

将您的网址更改为http://www.taconic.com/resources/webinars/archive/hla-transgenic-mice-development-validation-and-applications.html?webinar=yes,然后播放器显示。

答案 1 :(得分:0)

Gotcha - 感谢所有人的快速修复。

   <style>
    .dynamic-content {
        display:none;
    }
    </style>
    <script src="//code.jquery.com/jquery-1.12.0.min.js"></script>
    <script type="text/javascript">
        // Parse the URL parameter
        function getParameterByName(name, url) {
            if (!url) url = window.location.href;
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
        }
        // Give the parameter a variable name
        var dynamicContent = getParameterByName('webinar');

         $(document).ready(function() {

            // Check if the URL parameter is hla
            if (dynamicContent == 'hla') {
                $('#hla').show();
            } 
            // Check if the URL parmeter is empty or not defined, display default content
            else {
                $('#default-content').show();
            }
        });
    </script>