java 剃须刀块内的脚本函数

java script function inside razor block

只有当用户具有管理员权限时,我才会在单击时调用 EditDetails javascript 函数,否则会禁用该按钮。

我看到了错误 "Cannot implicitly convert type bool to string " 在 javascript 函数名处。

可能是什么问题?

 <img src='../../Images/Edit.png' alt='Click to Edit' 
 onclick="@(Model.AdminPermissions ? "javascript:EditDetails('#@rowId');" ? "")" disabled="@(Model.AdminPermissions ? "" : "disabled")"

您看到的错误是因为您不小心在 @() 块中包含了一个额外的 ?,它应该是一个 :

总的来说,已经很接近了,您只需要确保脱离字符串连接并返回到 rowId.

的剃刀(服务器)范围
<img src='../../Images/Edit.png' alt='Click to Edit' 
    onclick="@(
        Model.AdminPermissions ? "javascript:EditDetails('#" + rowId + "');" 
                               : ""
    )"
    disabled="@(Model.AdminPermissions ? "" : "disabled")
/>