.each循环更改网格内Anchor标记的href

时间:2013-11-21 05:50:27

标签: javascript jquery html asp.net-mvc-3

我被困在第一个我需要在网格上找到Text的地方,无论是“加入”还是“加入” 然后如果它是加入锚标签Href将是"/User/JoinEvent?eventId=@item.EventId&eventdateid=@item.EventDateId"

当它被“加入”时,锚标记Href将为"/User/DeleteEventDate?userEventId=@item.UserEventId" 使用Jquery

这是我的试用版,但一切都行不通,因为之前我想要“加入”被禁用

`

$(document).ready(function () {
    if ($('#btnEdit').text("Joined")) {
        $('#btnEdit').prop('disabled', "disabled"); 
    }
    else {
        $('#btnEdit').prop('disabled', true);
    }
});

`

<td> <a href="/User/JoinEvent?eventId=@item.EventId&eventdateid=@item.EventDateId" id="btnEdit" class="k-button" style="text-decoration: none;"> @item.IsJoined</a> </td>

我的试用

$(document).ready(function () {
        var txt = $('#btnEdit').text()
        if (txt === "Joined") {
            $('#btnEdit').prop('href', "/User/DeleteEventDate?userEventId=@item.UserEventId");

        }
        else {
        $('#btnEdit').prop('href', "/User/JoinEvent?eventId=@item.EventId&eventdateid=@item.EventDateId");

        }
    });

2 个答案:

答案 0 :(得分:0)

尝试

$(document).ready(function () {
    var txt = $('#btnEdit').text()
    if (txt === "Joined") {
        $('#btnEdit').prop('disabled', false);
    } else {
        $('#btnEdit').prop('disabled', true);
    }
});

<小时/> 问题

$('#btnEdit').text("Joined") --> you are setting text to Joined 

if ($('#btnEdit').text("Joined")) --> if condition will always be true

解决方案

if($('#btnEdit').text() === "Joined") --> check if text is Joined

<小时/> 要更改a代码href,请使用.prop()

$('el').prop('href','value');

答案 1 :(得分:0)

而不是if ($('#btnEdit').text("Joined"))我认为你的意思是if ($('#btnEdit').text() == "Joined")

使用参数调用jQuery的文本方法会将该节点的文本设置为该文本。