在MVC3中的razor语法中显示jquery元素

时间:2015-02-25 22:39:29

标签: jquery asp.net-mvc-3 razor

我试图在razor语法块中使用jquery显示一个特定元素$("#lblDischargeHeader").show();但是我现有的代码,razor试图将其视为C#代码。

@{         
    if (Model.Patient.PatientStatusType.Description == "Discharged")
    {
        $("#lblDischargeHeader").show();

        <div id="DischargePanel" class="panel panel-danger" style="clear:both;">
            <div class="panel-heading">Patient Discharged</div>
            <div class="panel-body">
                <table>
                    <tr>
                        <td><b>Date:</b></td><td>@Model.Patient.PatientDischarge.DischargeDate.ToShortDateString()</td>
                        <td><b>Reason:</b></td><td>@Model.Patient.PatientDischarge.Reason</td>
                    </tr>
                </table>
            </div>
        </div>
    }
}

我尝试使用语法:@:$("#lblDischargeHeader").show();,但所有这一切都将该行渲染为我页面上的文本。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

jQuery是在客户端上运行的JavaScript代码。

C#运行服务器端。你无法在服务器端嵌入它并让它在那里运行。您需要使用模板中的C#和逻辑或使用JavaScript(但没有C#)的客户端隐藏服务器端的元素。