MVC 3 淘汰其他如果字符串 != " "


<!-- ko if: ItemType() > 0 -->
  <div ...   </div>
<!-- /ko -->
<!-- ko else if: OfferId() != "" -->
  <div ...      </div>
<!-- /ko -->

ItemType 和 OfferId 是对象中的属性,由

public string OfferId { get; set; }
public int ItemType { get; set; }
p.ItemType = ko.observable(item.ItemType);
p.OfferId = ko.observable(item.OfferId);

第一个 if 语句有效,但如果 ItemType 为 0 并且 OfferId 是某种东西,则其他语句无效。 为什么?

您没有在冒号前键入JavaScript。 这是 KNOCKOUT 中的绑定名称。 在淘汰赛中没有else if绑定。

您将需要执行以下操作:

<!-- ko if: ItemType() > 0 -->
    <div ...   </div>
<!-- /ko -->
<!-- ko if: ItemType() <= 0 && OfferId() != "" -->
  <div ...      </div>
<!-- /ko -->

有关绑定的完整列表,请参阅左列 http://knockoutjs.com

"控制流"部分具有if绑定 - 无else if

删除第二条语句中的 else 。 据我所知,如果在淘汰赛中绑定,没有其他方法。

<!-- ko if: OfferId() != "" && ItemType() == 0 -->
  <div ...      </div>
<!-- /ko -->

相关内容

最新更新