难以用Javascript加载新页面

时间:2015-07-16 01:42:32

标签: javascript html flask

我正在写一个基本的Flask应用程序。我有一个名为/searchByCollege的页面,其中包含一组按钮,每个按钮都有一个团队名称作为文本,而.college作为他们的类。

我已经编写了一些JS,以便当用户点击按钮时,它会加载/searchByCollege/collegeName,其中collegeName是他们刚刚点击的按钮的文字。这就是我所拥有的:

<script>
$('.college').on('click', function() {
    var baseURL = $('#baseURL').text();
    var finalURL = baseURL + "/" + this.text();
    window.location.href = finalURL;
    return false;
})
</script>

我最初没有包含return false;,点击按钮时没有任何反应。然后我添加了return false;,我得到了相同的结果。我检查了HTML并且基本网址是正确的(它只是/searchByCollege)。当我点击按钮时,我已查看了请求,但没有正在制作。

我已经通过谷歌的CDN加载了jQuery,所以这不是问题。

还有其他想法吗?

感谢您的帮助, bclayman

4 个答案:

答案 0 :(得分:1)

您需要等待使用$(document).ready加载文档:

<script>
$(document).ready(function(){
    $('.college').on('click', function() {
        var baseURL = $('#baseURL').text();
        var finalURL = baseURL + "/" + this.text();
        window.location.href = finalURL;
        return false;
    });
});
</script>

答案 1 :(得分:1)

this.text()

需要更改为

$(this).text()

答案 2 :(得分:0)

我无法弄清楚你在哪里获得'baseURL'因为你只使用JQuery,你需要调用.value而不是.text()

<button class="college" value="CSU">CSU</button>

$('.college').on('click', function(){
    var baseURL = "/searchByCollege";
    var finalURL = baseURL + "/" + this.value;
    return false;
});

答案 3 :(得分:-2)

你可以试试这个

window.location.hostname = finalURL;
window.location.pathname = '';