我试图在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();
,但所有这一切都将该行渲染为我页面上的文本。
感谢您的帮助!
答案 0 :(得分:1)
jQuery是在客户端上运行的JavaScript代码。
C#运行服务器端。你无法在服务器端嵌入它并让它在那里运行。您需要使用模板中的C#和逻辑或使用JavaScript(但没有C#)的客户端隐藏服务器端的元素。