Kesalahan: TypeError yang tidak tertangkap: tidak dapat membaca properti 'gaya' yang tidak ditentukan. Gaya bekerja ketika saya memilih input. Input ini:

var input = document.getElementById('pa_rama').value;
    var option = document.getElementById('pa_razmer').value;
    let ramka = document.getElementsByClassName('woocommerce-product-gallery__image');

       if(input == 'chernaya') {
    for(var i=0; i < input.length; i++) {
      ramka[i].style.border = '50px solid black';    
      ramka[i].style.boxShadow = 'none';
}   
} 

Apa yang salah?

0
Alex 5 April 2021, 03:23

2 jawaban

Jawaban Terbaik

Anda harus melihat posting ini: bagaimana cara mengulang dengan benar melalui getElementsName

Yang perlu Anda lakukan adalah:

var input = document.getElementById('pa_rama').value;
    var option = document.getElementById('pa_razmer').value;
    let ramka = document.getElementsByClassName('woocommerce-product-gallery__image');

       if(input == 'chernaya') {
    for(var i=0; i < ramka.length; i++) { //I think you want to loop on ramka.lenght and not input.lenght, right ?
      ramka.item(i).style.border = '50px solid black';    
      ramka.item(i).style.boxShadow = 'none';
}   
} 
0
Axel W 5 April 2021, 12:59

Periksa apakah Anda menambahkan <script> js file di bagian bawah html

Atau coba dengan fungsi onload dalam javascript

window.onload = function() {
   var input = document.getElementById('pa_rama').value;
   var option = document.getElementById('pa_razmer').value;
   let ramka = document.getElementsByClassName('woocommerce-product-gallery__image');

   if(input == 'chernaya') {
     for(var i=0; i < input.length; i++) {
       ramka[i].style.border = '50px solid black';    
        ramka[i].style.boxShadow = 'none';
      }   
   } 
}
0
Dinesh karthik 5 April 2021, 13:03