1

我有 asp.net mvc4 项目,我在其中使用 ajax 查询从服务器端获取数据

$.getJSON('/Administrator/GetStudentAppNumbers/', function(data) {
        //alert(data[0]);
        $.each(data, function (i, appNumber) {
            var program = $('"#' + appNumber + '"').html();
            var newProgram = $.trim(program).replace(/\s/g, " ");
            var shortText = $.trim(newProgram).substr(0, 40) + "...";
            $('"#' + appNumber + '"').html(shortText);
            $('"#' + appNumber + '"').click(function () {
                alert(newProgram);
            });
        });
    });

但是当我尝试在控制台中调用它时,他们返回给我一个错误:

未捕获的错误:语法错误,无法识别的表达式:“#UZ43”

当我尝试从alert(appNumber);他们那里调用它时,他们会返回我UZ43

有什么想法我错了吗?

4

3 回答 3

2

双引号不应该是选择器值的一部分:

$('"#' + appNumber + '"')

应该:

$('#' + appNumber)

有了$("#UZ43"),选择器的值为#UZ43

$('"#' + appNumber + '"')值为"#UZ43"。_

于 2013-09-27T13:15:37.760 回答
0

您的选择器不正确,因此您正在尝试调用html()字符串;因此错误。尝试这个:

var program = $('#' + appNumber).html(); // note the removed double quotes (")
于 2013-09-27T13:15:58.473 回答
0

尝试更换

 $('"#' + appNumber + '"').html(shortText);

 $('#' + appNumber).html(shortText);
于 2013-09-27T13:16:09.617 回答