当用户使用Jquery单击锚标记时如何重定向到另一个页面?

时间:2017-04-03 13:36:15

标签: javascript jquery html

当用户使用jquery点击链接时,我想重定向到另一个页面,而不是使用href =“”

我尝试了以下代码。但它不起作用

$('.list-of-link').on('click', 'a', function () {
    alert($(this).html());
    window.location.replace("http://stackoverflow.com");
})

警报正在运行。但重定向或替换不起作用。

<div class="list-of-link">         
    <a class="SavedLink" href="">jjj</a><br>
    <a class="SavedLink" href="">jassom</a><br>
    <a class="SavedLink" href="">filetest</a><br>
    <a class="SavedLink" href="">testsucces</a><br>
    <a class="SavedLink" href="">faisal</a><br>
    <a class="SavedLink" href="">tajul</a><br>
    <a class="SavedLink" href="">description</a><br>
    <a class="SavedLink" href="">description1</a><br>
</div>

更新

  

这些链接已由ajax完成。通过以下代码:

var UserID=$('#hiddenSessionUserID').val()
$.ajax({
    url: 'SavedReports.aspx/getSavedReportName',
    method: 'post',
    contentType: 'application/json',
    data: '{userID:"' + UserID + '"}',
    dataType: 'json',
    success: function (data) {
        if (data.d !== 'No Reports') {
            //alert("success" + data.d);
            var fullData = data.d;

            var splitData = fullData.split('$$$');

            for (var i = 0; i < splitData.length; i++) {
                var oneLinkData = splitData[i];

                var splitoneLinkData = oneLinkData.split('###');
                //alert(splitoneLinkData[0] + "   " + splitoneLinkData[1]);
                $(".list-of-link").append('<a class="SavedLink" href="" >' + splitoneLinkData[1] + '</a><br/>');
            }
        }
    },
    error: function (error) {
        alert('Please Call Administrator');
    }
})

5 个答案:

答案 0 :(得分:1)

您可以将href=""更新为href=";"href="javascript:;"

答案 1 :(得分:1)

在你的锚点href中指定#,其余的代码按预期执行:

    <a class="SavedLink" href="#">jjj</a>

答案 2 :(得分:0)

试试这个:

$('.list-of-link').on('click', 'a', function (e) {
    e.preventDefault();// add this line
    alert($(this).html());
    window.location.replace("http://stackoverflow.com");
})

答案 3 :(得分:-1)

你需要prevent the default action这样

$('.list-of-link').on('click', 'a', function (e) {
    e.preventDefault();
    alert($(this).html());
    window.location.replace("http://stackoverflow.com");
})

这会阻止锚标记执行其要执行的操作并使用href属性进行导航。 如果你不想在JS中这样做,你也可以从HTML中删除href属性

编辑:刚看到你的额外代码。

您可以更改

$(".list-of-link").append('<a class="SavedLink" href="" >' + splitoneLinkData[1] + '</a><br/>');

$(".list-of-link").append('<a class="SavedLink">' + splitoneLinkData[1] + '</a><br/>');

答案 4 :(得分:-1)

您可以使用:

$('.list-of-link').on('click', 'a', function () {
    window.location.href = "http://stackoverflow.com";})