【问题标题】:Problems with a jquery line when using Razor使用 Razor 时出现 jquery 行的问题
【发布时间】:2012-05-08 08:51:08
【问题描述】:

我有以下行正常工作:

 html: "<td>" + goalcard.Name + "</td><td>" + goalcard.Customer + "</td><td>" + goalcard.PlannedDate + "</td><td>" + goalcard.CompletedDate + "</td>"

当我尝试这个时,我会显示我的 JSON。

html: "<td>" + goalcard.Name + "</td><td>" + goalcard.Customer + "</td><td>" + goalcard.PlannedDate + "</td><td>" + goalcard.CompletedDate + "</td><td>" +  @Html.ActionLink("Ändra", "Edit") | @Html.ActionLink("x", "Inactive", new { @class = "deleteLink" }) + "</td>"

我还收到一堆错误,例如:

  • 函数外的'return'语句'
  • 预期为“;”
  • 语法错误
  • 预期的标识符或字符串

我在这里做错了吗?

这是完整的功能:

 result.forEach(function (goalcard) {
                                $("#GoalcardSearchResult tbody").append(
                                    $('<tr/>', {
                                        click: function() {
                                            id = goalcard.Id;
                                            var url = '@Url.Action("AnswerForm", "AnswerNKI", new { id = "__id__"})';
                                            window.location.href = url.replace('__id__', id);


                                        },
                                        // steg Create a row for each result 
                                        html: "<td>" + goalcard.Name + "</td><td>" + goalcard.Customer + "</td><td>" + goalcard.PlannedDate + "</td><td>" + goalcard.CompletedDate + "</td><td>" +  @(Html.ActionLink("Ändra", "Edit")) | @(Html.ActionLink("x", "Inactive", new { @class = "deleteLink" })) + "</td>"
                                    }));
                            });
                            $('#GoalcardSearchResult tbody').trigger("update");                                
                            $("#GoalcardSearchResult").tablesorter();
                        });

                        return false; 

提前致谢!

【问题讨论】:

  • 哦,如果您遇到这些错误,我肯定会说您做错了:D 虽然您没有显示相关代码,所以这对我们帮助不大.
  • 已更新,如果我移除剃须刀的东西一切正常:S
  • 您不能直接在 javascript 中使用 razor 语法。您将需要使用伪 或 @:看看这个 stackoverflow.com/questions/4045308/razor-syntax-and-javascript/…
  • 你能举个例子吗?我不知道在哪里使用@:

标签: javascript jquery asp.net-mvc razor


【解决方案1】:

这段代码

 "</td><td>" + @(Html.ActionLink("Ändra", "Edit")) | @(Html.ActionLink("x", "Inactive", new { @class = "deleteLink" })) + "</td>"

生成

"</td><td>" + <a href="/Examination/CertificationAnnouncements/Edit">&#196;ndra</a> | <a href="/Examination/CertificationAnnouncements/Inactive?class=deleteLink">x</a> + "</td>"

请注意,生成的锚点没有字符串标识符(' 或 "),因此会出现错误。您应该将代码更改为

 "</td><td>" + '@(Html.ActionLink("Ändra", "Edit")) | @(Html.ActionLink("x", "Inactive", new { @class = "deleteLink" }))' + "</td>"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-03
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 2011-08-22
    相关资源
    最近更新 更多