【问题标题】:How to check array null or empty in jsrender?如何在jsrender中检查数组是否为空?
【发布时间】:2015-03-28 06:42:35
【问题描述】:

下面是我的代码

<script type="text/javascript">
			
		var test1 = {
				"type" : "success",
				"code" : "600",
				"data" : [ ]
			};
		
		var template = $.templates("#template");
		var htmlOutput = template.render(test1);
		$("#billListBox").html(htmlOutput);
		
		function billButtonOnClick(searchBillId,isComeFromBillClick,billDiv){
			console.log(searchBillId);
			console.log(isComeFromBillClick);
			console.log(billDiv);
		}

	</script>
&lt;div id="billListBox"&gt;&lt;/div&gt; 

我想检查 jsrender 中的数据是否为空或为空?如何检查?

【问题讨论】:

    标签: javascript jquery template-engine jsrender jsviews


    【解决方案1】:

    你不能检查一下test1.data &amp;&amp; test1.data.length &gt; 0

    jsrender 也有 if/else 语句

    【讨论】:

    • 对我来说这有效 {{if data }}{{if data.length != 0 }}
    【解决方案2】:

    如果您使用的是{{for data}},那么您实际上不需要测试空/空(无论是在代码中还是通过包装在{{if}}...{{/if}} 中)。

    你可以简单地写

    {{for data}}
        ...
    {{/for}}
    

    即使它是空的或 null 也可以正常工作 - 它不会为该块渲染任何内容。

    如果你愿意,你可以使用

    {{for data}}
        ...
    {{else}}
        output this if data is empty or null
    {{/for}}
    

    它会为空/空情况输出你想要的任何东西。

    http://www.jsviews.com/#fortag

    【讨论】:

      【解决方案3】:

      试试这个

      var test1 = {
      				"type" : "success",
      				"code" : "600",
      				"data" : [ ]
      			};
      
      //check condition if array is empty or not
      if(jQuery.isEmptyObject(test1.data)){
      	alert("array is empty");
      }else{
      	alert("array is not empty");
      }
          &lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"&gt;&lt;/script&gt;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-23
        • 1970-01-01
        • 2014-09-29
        • 1970-01-01
        • 2012-12-01
        • 2012-07-02
        • 1970-01-01
        相关资源
        最近更新 更多