Javascript 在Foreach循环中使用IF条件比较数据绑定值

Javascript 在Foreach循环中使用IF条件比较数据绑定值,javascript,if-statement,foreach,knockout-2.0,Javascript,If Statement,Foreach,Knockout 2.0,我需要比较ForEach循环中从db返回的值。我不知道如何将这个值加起来,即将其存储在变量中并用于比较 <tbody data-bind="foreach: ContractorList"> <tr> <td> <a href="#" data-bind="text

我需要比较ForEach循环中从db返回的值。我不知道如何将这个值加起来,即将其存储在变量中并用于比较

<tbody data-bind="foreach: ContractorList">
                            <tr>
                                <td>
                                    <a href="#" data-bind="text: Contractor_Name, click: $root.listContractorDetails"></a>
                                    <span data-bind="text:Contractor_Status"></span>
                                    <span data-bind="if: some-syntax?? ">1</span>
                                    <span data-bind="if: same-syntaxt??">2</span>
                                </td>
                            </tr>
                        </tbody>
                    </table>
数据绑定=text:Contractor_状态返回已注册或已拒绝,如果已注册,则我要显示span 1,否则显示span 2。请你帮我解释一下语法好吗

ContractorList中的每个承包商都应该具有稍后在if绑定中所需的全部属性

 // where 'x' is a property of each contractor:
 <span data-bind="if: x == 1">1</span>
 <span data-bind="if: x == 2">2</span>

我在HTML文件中使用了IF条件而不是.js文件,解决了这个问题。 为了避免我犯的错误,请不要做下面的事情 截止日期 与之相比等于的双精度=== get参数

<tbody data-bind="foreach: ContractorList">
                            <tr>
                                <td>
                                    <!-- ko if: (ContractorStatusList() == 'Enrolled')-->
                                    <span>1</span>
                                    <!--/ko -->
                                    <!-- ko if: (ContractorStatusList() == 'Rejected')-->
                                    <span>2</span>
                                    <!--/ko -->

我在下面添加了一个方法,但它总是默认为错误的位置/*代码*/如果self.ContractorStatusList==“已登记”IsAddPage:ko.observectrue;else IsAddPage:ko.observefalse;我试着给你一个答案,但我不确定这是否是你想要的…嗨,Matias,编译器怎么知道x是什么?承包商列表是一个可观察的区域,具有许多值,如承包商名称、承包商状态、,等等。我想选择我正确获得的承包商状态值,并将其用于IF比较。有什么建议吗?我尝试了这个,但它不起作用1 2@nyc_316你需要学习更多关于KO的知识!它知道这一点,因为foreach绑定的上下文是当前迭代的对象,就像代码中的实际foreach一样。如果因为属性名有某种类型或谁知道是什么原因而不起作用。。。您应该尝试使用SO编辑器构建代码段,这样我就可以运行它并检查出了什么问题..Matias,谢谢您的帮助。你认为下面代码的语法正确吗?1.2@nyc_316这似乎是对的。。。顺便说一句,这么想不是聊天。。。这里你需要提供一个具体的问题,有人可以像我一样帮助你,但这不是一个黑色的嵌套问题:D
<tbody data-bind="foreach: ContractorList">
                            <tr>
                                <td>
                                    <!-- ko if: (ContractorStatusList() == 'Enrolled')-->
                                    <span>1</span>
                                    <!--/ko -->
                                    <!-- ko if: (ContractorStatusList() == 'Rejected')-->
                                    <span>2</span>
                                    <!--/ko -->