使用输入字段自定义文本

时间:2017-08-01 13:40:58

标签: javascript arrays input-field

有人知道如何在点击复选框时修复重复项吗?

<label><input type="checkbox" data-bValue="100" data-sValue="sV1" data-nValue="nV1" name="layers"> 100</label><label><input type="checkbox" data-bValue="200" data-sValue="sV2" data-nValue="nV2" name="layers"> 200</label><label><input type="checkbox" data-bValue="300" data-sValue="sV3" data-nValue="nV3" name="layers"> 300</label><label><input type="checkbox" data-bValue="400" data-sValue="sV4" data-nValue="nV4" name="layers"> 400</label><label><input type="checkbox" data-bValue="500" data-sValue="sV5" data-nValue="nV5" name="layers"> 500</label><label><input type="checkbox" data-bValue="600" data-sValue="sV6" data-nValue="nV6" name="layers"> 600</label><label><input type="checkbox" data-bValue="700" data-sValue="sV7" data-nValue="nV7" name="layers"> 700</label><h1 id="render"></h1>

我的搜索让我相信我必须重新做这一切,但我想我先问这里。

小提琴:https://jsfiddle.net/swedoc/Lwr16wrt/

    $(document).ready(function() {

    var scents = [];
    var notes = [];
    var theRender = document.getElementById("render"); 

    $("input[name='layers']").on('click', function(){ 

                $.each($("input[name='layers']:checked"), function(){            
                    scents.push($(this).attr("data-sValue"));
                });        

                $.each($("input[name='layers']:checked"), function(){            
                    notes.push($(this).attr("data-nValue"));
                });

                    theRender.innerHTML 
                    += "You’ve created a<br>" 
                    + scents.join(', ').replace(/,(?!.*,)/gmi, ' and') + " sValue with " 
                    + notes.join(', ').replace(/,(?!.*,)/gmi, ' and') + " nValue.";                        
    });
});

1 个答案:

答案 0 :(得分:0)

答案是关于变量的范围。您需要在函数内声明数组,而不是在外部。

同时从<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="myApp" ng-controller="MyCtrl"> <label>USER CODE:</label> <input type="text" ng-model="code"/> <button type="button" ng-click="getData(code)">Show</button> </div>删除“+”。

innerHTML +=

这是你的小提琴被纠正:https://jsfiddle.net/Lwr16wrt/23/