JavaScript在视图MVC4中不起作用

JavaScript在视图MVC4中不起作用,javascript,asp.net-mvc-4,Javascript,Asp.net Mvc 4,我试图通过改变一行的背景色来增加id=2的行。我在视图中使用了JavaScript,但在运行代码后它确实改变了任何东西。这是我的密码 <table class="GoalDistribution"> @{var i = 0;} @foreach (var item in Model) { <tr id = "@i"> <td> @Html.ActionLink(item.ORDER_NO, "MKP_003",

我试图通过改变一行的背景色来增加id=2的行。我在视图中使用了JavaScript,但在运行代码后它确实改变了任何东西。这是我的密码

<table class="GoalDistribution">
@{var i = 0;}
@foreach (var item in Model) {

    <tr id = "@i">
        <td>
            @Html.ActionLink(item.ORDER_NO, "MKP_003", "MKP_003", new { id = item.ORDER_NO }, new { })
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.MODEL)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.PJNO)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.DELIVERY_DESTINATION)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.PRODUCT_START_DATE)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.FINISH_FLAG)
        </td>

    </tr>
    i++;
    if (item.PJNO == "100") { 
        <script type="text/javascript">
            $(".GoalDistribution #@(i)").css("background","yellow")
             </script>
    };
}
</table>

@{var i=0;}
@foreach(模型中的var项目){
@ActionLink(item.ORDER_NO,“MKP_003”,“MKP_003”,new{id=item.ORDER_NO},new{})
@DisplayFor(modeleItem=>item.MODEL)
@DisplayFor(modeleItem=>item.PJNO)
@DisplayFor(modelItem=>item.DELIVERY\u目的地)
@DisplayFor(modelItem=>item.PRODUCT\u开始日期)
@DisplayFor(modelItem=>item.FINISH_标志)
i++;
如果(item.PJNO==“100”){
$(“.GoalDistribution#@(i)”.css(“背景”、“黄色”)
};
}
调试时,数据加载成功。
顺便问一下:这是做这项工作的最佳方式吗。我能在控制器里处理吗。非常感谢你

你可以这样做。当
i=1
时,只需将一个类添加到
tr
。写你的日记

 i++;
 @if(i == 2)
 {
   <tr class="bgYellow">
 }else
 {
   <tr>
 }
        <td>
            @Html.ActionLink(item.ORDER_NO, "MKP_003", "MKP_003", new { id = item.ORDER_NO }, new { })
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.MODEL)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.PJNO)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.DELIVERY_DESTINATION)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.PRODUCT_START_DATE)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.FINISH_FLAG)
        </td>

    </tr>
i++;
@如果(i==2)
{
}否则
{
}
@ActionLink(item.ORDER_NO,“MKP_003”,“MKP_003”,new{id=item.ORDER_NO},new{})
@DisplayFor(modeleItem=>item.MODEL)
@DisplayFor(modeleItem=>item.PJNO)
@DisplayFor(modelItem=>item.DELIVERY\u目的地)
@DisplayFor(modelItem=>item.PRODUCT\u开始日期)
@DisplayFor(modelItem=>item.FINISH_标志)
然后使用这个脚本

<script>
    $(documet).ready(function(){
        $(".GoalDistribution).find('.bgYellow').css("background","yellow")
    });
    </script>

$(documet).ready(函数(){
$(“.GoalDistribution).find(“.bgYellow”).css(“背景”,“黄色”)
});

注意:Id不应以数字开头。在页面底部或顶部编写此脚本。

删除内联脚本,只需在页面底部添加一个脚本-
$(“.GoalDistribution#2”).css(“背景”、“黄色”)
像下面那样尝试$(“.GoalDistribution”#“+i).css(“背景色”、“黄色”)我试过了,但没用。您的id是
项。订单号是
。请检查它是否包含值。我调试,数据正常。