在 JavaScript 中分解复选框输入值

Explode checkbox input value in javascript

本文关键字:输入 复选框 分解 JavaScript      更新时间:2023-09-26

所以我有这样的输入复选框代码:

<input type='checkbox' name='cek[]' class='check1' value='$data[id_usulan]' >

并且有一个 id = test2 的输入文本,所以当我单击复选框时,输入文本值将更改为复选框值(这没有问题),我使用此 javascript 代码来执行此操作:

 $("input[type=checkbox]").click(function(){
        var sum=0;
        if ($("input[type=checkbox]").is(':checked')) {
        $("input[type=checkbox]:checked").each(function(index){
            sum += Number($(this).val().replace( /[^'d.]/g,''));
        });
            }
        $("#test2").val(sum);
    } );

然后我更改复选框:

<input type='checkbox' name='cek[]' class='check1' value='$data[id_usulan]/$data[jml_harga]' >

如您所见,我尝试在一个复选框中使用 2 个值($data[id_usulan]$data[jml_harga] 个,用 ' /' 分隔),但我只想使用一个值 ( $data[jml_harga] ) 表示$(this).val(),好吧,您可能会认为如果我想使用 $data[jml_harga] 那么我不必制作 2 个值,但不要问, 我使用 2 值还有另一个原因。

所以这就是我尝试过的:

 $("input[type=checkbox]").click(function(){
    var sum=0;
    if ($("input[type=checkbox]").is(':checked')) {
    $("input[type=checkbox]:checked").each(function(index){
     var explode = $(this).val().split('/');
     var price = explode[2];
        sum += Number(price.replace( /[^'d.]/g,''));
    });
        }
    $("#test2").val(sum);
} );

但是当我单击复选框时,输入文本值没有更改为复选框值,并且与检查之前相同,那么如何解决此问题?

如果有人有办法解决这个问题,请帮助我.. :)

这是问题所在: var price = explode[2];

第二个值是: var price = explode[1];