0

我有一些代码,例如:

<table class="invisibleforprint">
    <thead>
        <tr class="mainheader">
            <th>@Html.ActionLink("Invoice Number", "Index", new { sortOrder= ViewBag.NumberSortParm })</th>
        </tr>
    </thead>
    <tbody>
    @foreach (var item in Model) {
        <tr>
            <td class="invoiceActions">
                <input type="button" class="btnresetinvoice button" value="Reset" data-invoiceid="@item.InvoiceId" />
            </td>
        </tr>
    }</tbody>
</table>

哪个编译好。我去并在输入中添加了一个 if 语句:

<table class="invisibleforprint">
    <thead>
        <tr class="mainheader">
            <th>@Html.ActionLink("Invoice Number", "Index", new { sortOrder= ViewBag.NumberSortParm })</th>
        </tr>
    </thead>
    <tbody>
    @foreach (var item in Model) {
        <tr>
            <td class="invoiceActions">
                <input type="button" class="btnresetinvoice button" value="Reset" data-invoiceid="@item.InvoiceId" @{ if(item.PMApproved != true) { @:disabled="disabled" } } />
            </td>
        </tr>
    }</tbody>
</table>

它给出了错误'}预期'

说什么?我添加了等量的左括号。

有谁知道我做错了什么?

4

4 回答 4

1
<input type="button" class="btnresetinvoice button" value="Reset" data-invoiceid="@item.InvoiceId" @(item.PMApproved != true ? "disabled='disabled'" : "" ) />
于 2012-04-16T21:15:18.823 回答
1
<input type="button" value="Reset" data-invoiceid="@item.InvoiceId" @(item.PMApproved ? "disabled=\"disabled\"" : null) />

或者你可以使用@if标签<text>

<input type="button" value="Reset" data-invoiceid="@item.InvoiceId" @if(item.PMApproved) { <text>disabled="disabled"</text>} />
于 2012-04-16T21:39:48.010 回答
0

您应该使用普通括号,而不是在 if 语句周围使用花括号。

IE:

@( if(item.PMApproved != true) { @:disabled="disabled" } )

你可以试一试吗?

于 2012-04-16T21:01:44.077 回答
0

您可以执行以下色情内容(但请不要):

<input type="button" class="btnresetinvoice button" value="Reset" data-invoiceid="@item.InvoiceId" @Html.Raw(item.PMApproved ? "disabled=\"disabled\"" : "") />

或按照我的建议使用助手:

@Html.ApproveButton(item)
于 2012-04-16T21:14:39.723 回答