2017-08-22 3 views
0

Hallo Leute, ich möchte das Attribut meiner Checkbox bekommen. Die Checkbox war ein Array, also möchte ich das Attribut der Checkboxen bekommen und es in die Textbox setzen und es mit einem Komma trennen.bekommen Checkbox-Attribut mit Javascript (Array)

Hier ist meine php/html

$query = $db->select('owners_information',array('*'),$con); 

foreach($query as $q){ 
    //echo $q['lastname'];   
     $output .= ' 
     <tr> 
     <td>'.$q["firstname"].'</td> 
     <td>'.$q["middlename"].'</td> 
     <td>'.$q["lastname"].'</td> 
     <td>'.$q["land_area"].'</td> 
     <td><input type="text" value="'.$q["OCPC_ID"].'" name="ocid[]"> 
     <input type="checkbox" value="'.$q["land_area"].'" name="checkval[]" attr="'.$q["OCPC_ID"].'"></td> 
     </tr> 
     '; 

    } 
if($query > 0){ 
    echo '<input type="text" name="textval" id="textval">'; 
    echo '<br><input type="text" name="ocpc_id" id="ocpc_id">'; 
    echo '<input type="button" name="merge" id="merge" value="Merge" onclick="mergeFunc()">'; 
    echo '<input type="button" name="addNew" id="addNew" value="Add New RPU" onclick="addMerge()" style="display:none;">'; 
    echo $output; 
    }else{ 
    echo "No data found"; 
    } 

Und hier ist mein Javascript

function mergeFunc() { 

var checkboxes = document.getElementsByName('checkval[]'); 
var cd = document.getElementsByName("checkval[]"); 

var val_id = ""; 
for (var l=0, n=cd.length;l<n;l++) 
{ 
    if (cd[l].checked) 
    { 
    val_id += ","+cd[l].attr; 
    } 
} 
if (val_id) val_id = val_id.substring(1); 

alert(val_id); 


var vals = ""; 
for (var i=0, n=checkboxes.length;i<n;i++) 
{ 
    if (checkboxes[i].checked) 
    { 
     vals += ","+checkboxes[i].value; 
    } 
} 
if (vals) vals = vals.substring(1); 


$('#ocpc_id').val(val_id); 
$('#textval').val(vals); 
$('#merge').hide(); 
$('#addNew').show(); 
} 

ich möchte das Attribut der Checkbox checkval[] genannt bekommen. Ich möchte bekommen, was in der attr Array ist. Ich hoffe du könntest mir helfen Jungs.

+0

Welche Attr versuchen Sie von der Checkbox zu bekommen? –

+0

Entschuldigung Sir ich habe meinen Code aktualisiert, dann möchte ich die 'attr =" '. $ Q ["OCPC_ID"].' "' Herr in meiner Checkbox – angel1108

+0

meinen Sie den Wert des Eingabetextes? –

Antwort

1

diese

document.getElementById('btn').addEventListener('click',function(){ 
    var checkboxes = document.getElementsByName('checkval[]'); 
    var input = document.getElementsByName('ocid[]'); 
    var checkval = ''; 
    var checkid = ''; 
    for(var i=0;i<checkboxes.length;i++) { 
    if(checkboxes[i].checked){ 
     i==0 ? checkval += checkboxes[i].value : checkval += ","+checkboxes[i].value; 
     i==0 ? checkid += input[i].value : checkid += ","+input[i].value; 
    } 
    } 
    console.log(checkval+" "+checkid); 
}); 

Siehe Versuchen Sie, die demo

0
var val_id = ""; 
for (var l=0, n=cd.length;l<n;l++) 
{ 
    if (cd[l].checked) 
    { 
    val_id += ","+cd[l].getAttribute("attr"); 
    } 
} 
if (val_id) val_id = val_id.substring(1); 

I Änderung val_id += ","+cd[l].attr;-val_id += ","+cd[l].getAttribute("attr");

Vielen Dank für Ihre Zeit Jungs haben.