当我想要在span标记内呈现文本时,查看span标记

时间:2012-08-29 12:49:56

标签: javascript razor resources

我在页面上显示“显示”或“缺席”的某些字词,用户可以单击以在存在或不存在之间切换。

当单词设置为“缺席”时,我希望该文本为红色。

这个词代表一个bool,并使用以下代码在屏幕上更新:

<script type="text/javascript">
    absentText = $.trim('@MyApp.Resources.MyAppResource.Absent_Text').toLowerCase();
    presentText = $.trim('@MyApp.Resources.MyAppResource.Present_Text').toLowerCase();
    updateAttendanceUrl = '@Url.Action("UpdateAttendance", "Attendance")';
</script>

MyAppResource.Absent_Text =缺席页面显示页面上显示“缺席”字样。

当我将MyAppResource.Absent_Text更改为“缺席”时,我的页面会逐字显示<span style="color:red">absent</span>

以下是我的观点来源示例:

<td>&lt;span style=&quot;color:red&quot;&gt;absent&lt;/span&gt;</td>

所以不知怎的,我的&lt;和&gt;符号被带走了。

如何更改我的代码,以便当我的屏幕上的字词被写为“缺席”时,它会显示为红色? 是否有一种更简单的方法可以在屏幕上为任何与“缺席”红色匹配的文字上色?

供参考,以下是我页面中其余的javascript:

var userId;
var attendanceDay;
var isPresent;
var updateAttendanceUrl;
var absentText;
var presentText;
var courseId;
$(document).ready(function (event) {
    $('.attendance').live('click', function () {
        userId = $(this).parents('tr').attr('id');
        if (userId != '') {
            attendanceDay = $(this).attr('id');
            isPresent = $.trim($(this).find('span').text().toLowerCase());
            courseId = $(this).parents('tbody').attr('id');
            $(this).find('span').addClass('currentClass');
            if (isPresent == absentText) {
                UpdateAttendance(1);
            } else {
                UpdateAttendance(0);
            }
        } else {
            event.preventDefault();
        }
    });
});
function UpdateAttendance(present) {
    url = updateAttendanceUrl;
    $.ajax({
        type: "POST",
        url: url,
        data: "userId=" + userId + "&attendanceDay=" + attendanceDay + "&courseId=" + courseId + "&present=" + present,
        success: function (data) {
            if (isPresent == absentText) {
                $('#' + userId).find('.currentClass').text(presentText).removeAttr('class');
            } else {
                $('#' + userId).find('.currentClass').text(absentText).removeAttr('class');
            }
            return true;
        }
    });
}

1 个答案:

答案 0 :(得分:0)

您要寻找的是unescape或htmldecode。 SO上已有各种主题。这是one