Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用jquery填充不同类型的表单,每个表单都不工作_Javascript_Php_Jquery_Json - Fatal编程技术网

Javascript 用jquery填充不同类型的表单,每个表单都不工作

Javascript 用jquery填充不同类型的表单,每个表单都不工作,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我正在尝试在更改选项上填充不同类型的表单。我的代码在下面没有错误,我没有得到预期的结果。事实上,我想加载所有数组值作为复选框,但它总是呈现最后一个,无法找到我做错了什么 [Jquery] $('select[name="scales"]').on('change',function(e){ e.preventDefault(); var scale = $(this).val(); switch(scale) { case

我正在尝试在更改选项上填充不同类型的表单。我的代码在下面没有错误,我没有得到预期的结果。事实上,我想加载所有数组值作为复选框,但它总是呈现最后一个,无法找到我做错了什么

[Jquery]

$('select[name="scales"]').on('change',function(e){
    e.preventDefault();
    var scale = $(this).val(); 
     switch(scale)
     {
        case 'shirtscale':
            var x = ['S','M','L','XL','XXL','XXXL','4XL','5XL','6XL','7XL','8XL','9XL','10XL'];
            $.each(x, function (index, value) {
                $("#xe").html("<input id='"+index+"' type='checkbox' value='"+value+"'>");
                console.log(value);
            });
            break;
        case 'ringscale':
            var x = ['3','3.5','4','4.5','5','5.5','6','6.5','7','7.5','8','8.5','9','9.5','10','10.5','11','11.5','12','12.5'];
            $.each(x, function (index, value) {
                $("#xe").html("<input id='"+index+"' type='checkbox' value='"+value+"'>");
                console.log(value);
            });         
            break;
        case 'shoescale':
            var x = ['A','B','C','D','E','F','G'];
            $.each(x, function (index, value) {
                $("#xe").html("<input id='"+index+"' type='checkbox' value='"+value+"'>");
                console.log(value);
            });             
            break;
        default:
    }
return false;
});
[查看]

<select id="scales" name="scales">
    <option value="0">Choose Measurement Scale ...</option>
    <option value="shirtscale">Shirt</option>
    <option value="ringscale">Finger Ring</option>
    <option value="pantscale">Pant</option>
    <option value="waistscale">Waist</option>
    <option value="wristscale">Wrist</option>
    <option value="brascale">Bra</option>
</select>

<div id="xe"></div>
这是因为$xe.html。。。将覆盖为上一个元素创建的dom。使用附加

$'select[name=scales]'。在'change'上,函数E{ e、 防止违约; var scale=$this.val; 开关秤{ 案例“Shirtsale”: 变量x=['S',M','L','XL','XXL','XXXL','4XL','5XL','6XL','7XL','8XL','9XL','10XL']; 附属器; 打破 案例“环标度”: 变量x=['3','3.5','4','4.5','5','6','6.5','7','7.5','8','8.5','9','9.5','10','10.5','11','11.5','12','12.5']; 附属器; 打破 “shoescale”一案: 变量x=['A','B','C','D','E','F','G']; 附属器; 打破 违约: } 返回false; }; 函数附件{ //删除以前的dom $xe.html; 设elem= $.eachx,函数索引,值{ //创建dom字符串,从arrat中获取每个值 元素+=`${value}` }; //附加最后的dom字符串 $xe.appendelem; } 选择测量尺度。。。 衬衫 指环 喘气 腰 手腕 胸罩
非常感谢你@brk