3

我正在使用 javascript 访问 URL 参数。然后我用 jQuery Mobile 操作 DOM。但是当我使用参数访问 html 文件时,它没有显示。我需要刷新页面以使其正常工作。我能做些什么?

Javascript:

<script type="text/javascript" charset="utf-8">
    $(document).ready(function() {
    // Read a page's GET URL variables and return them as an associative array.
        function getUrlVars()
        {
            var vars = [], hash;
            var hashes = window.location.href.slice(
                               window.location.href.indexOf('?') + 1).split('&');
            for(var i = 0; i < hashes.length; i++)
            {
                hash = hashes[i].split('=');
                vars.push(hash[0]);
                vars[hash[0]] = hash[1];
            }
            return vars;
        }
        var vars = getUrlVars()
        console.log(vars.institutname)
        $("#tasksPage").find("h1").append(vars.institutname)
        })
    </script>

编辑

我刚刚注意到没有执行任何 jQuery/javascript。需要明确的是:我有一个带有 URL 参数的 html 页面的链接。但是,如果我单击该链接并打开页面,它不会执行我的代码。我需要刷新才能完成这项工作。

我正在使用 jQuery Mobile。

4

2 回答 2

0

解决了。我需要将此添加到页面的链接中:

data-ajax='false'
于 2013-08-01T12:11:34.223 回答
0
function getUrlVars()
    {
        var vars = {}, hash;
        var hashes = window.location.href.slice(
                           window.location.href.indexOf('?') + 1).split('&');
        for(var i = 0; i < hashes.length; i++)
        {
            hash = hashes[i].split('=');

            vars[hash[0]] = hash[1];
        }
        return vars;
    }

vars 需要是一个对象,以便您可以执行 vars[hash[0]] = hash[1];

于 2013-08-01T10:56:48.993 回答