Onay kutuları henüz hiç hata Javascript kullanarak IE7 check-in ve olmayacak

oy
1

Tamam Bu sefer tamamen karıştı.

Ben bir JSON nesneden değerler bir demet alır ve onay kutuları ve ya çeklerin bir demet oluşturur ya da değerlere dayalı bir bu onay kutularını denetlememektedir bir komut dosyası var.

komut vb IE8, Firefox3, vb ... düzgün çalışır ...

Ancak...

IE7 komut onay kutularını işaretlemeyi başarısız olur. Hiçbir hataları görüntüler ve anlayabilirim kadarıyla, senaryo gayet güzel çalışır. Sadece onay kutularından birini kontrol etmez ve neden bilmiyorum ...

shoppingCart['Update_Stock_Item_0_NRD%5FHAT2'] = {
            'propeller': {
                            'label'          : 'propeller',                             
                            'optionValues'   : {                                                    
                                                 'on' : {
                                                    'selected': 'selected'
                                                        },
                                                  'off' : {
                                                            'selected': ''
                                                          },
                                                        '' : new String()
                                                }
                        },
            'sunLogo': {
                            'label'          : 'sunLogo',                           
                            'optionValues'   : {                                                    
                                                 'on' : {
                                                    'selected': 'selected'
                                                        },
                                                  'off' : {
                                                            'selected': ''
                                                          },
                                                        '' : new String()
                                                }
                        },
            'MSLogo': {
                            'label'          : 'sunLogo',
                            'optionValues'   : {                                                    
                                                 'on' : {
                                                    'selected': 'selected'
                                                        },
                                                  'off' : {
                                                            'selected': ''
                                                          },
                                                        '' : new String()
                                                }
                        }                           
};

fonksiyon stockInit () {alert ( BEGIN: stockInit ()); // TODO: Bir açık ve kapalı seçeneği alacaksınız, // Bir, seçilmiş bir seçilmiş özelliği bulunur // ve diğer bir seçilmiş özelliği bulunur // // nin seçilmiş özelliğini sahip seçeneği // işaretli değilse bir onay kutusu oluşturur. // // 'seçilmiş seçilen niteliği' vardır seçeneği // kontrol edilir bir onay kutusu oluşturur. //
// o şey // kurulum sadece yol var çünkü Neden? Sen ... sorun. Için (shoppingcart içinde var item) {// // console.log ( işleme öğesi: + item);

        var optionContainer = document.getElementById(item + _optionContainer);

        for(var option in shoppingCart[item])
        {
            if(option != blank)
            {
                // // console.log(option:  + option);

                var currentOption = shoppingCart[item][option]['optionValues'];

                // // console.log(currentOption['on']['selected']:  + currentOption['on']['selected']);
                // // console.log(currentOption['off']['selected']:  + currentOption['off']['selected']);

                // Really you only have to check the one, but just to be through-o
                var selected = (currentOption['on']['selected'] == 'selected') ? true : false;
                selected = (currentOption['off']['selected'] == 'selected') ? false : true;

                var label = document.createElement(LABEL);
                var labelText = document.createTextNode(shoppingCart[item][option]['label']);
                var optionInput = document.createElement(INPUT);

                var hiddenInput = document.createElement(INPUT);

                optionInput.setAttribute(type, checkbox);
                optionInput.checked = selected;

                optionInput.setAttribute(id, option);
                alert(optionInput.id);
                alert(optionInput.checked);

                hiddenInput.setAttribute(type, hidden);
                hiddenInput.setAttribute(name, option);
                hiddenInput.setAttribute(id, option + _hiddenValue);
                hiddenInput.setAttribute(value, (optionInput.checked) ? on : off);

                label.appendChild(optionInput);
                label.appendChild(labelText);
                label.appendChild(hiddenInput);

                (function(id)
                {
                    optionInput.onclick = function() {

                        var hiddenInput = document.getElementById(id + _hiddenValue);

                        hiddenInput.setAttribute(value, (this.checked == true) ? on : off);
                        alert(this.id:  + this.id);
                        alert(this.checked:  + this.checked);
                    }
                })(optionInput.id);

                optionContainer.appendChild(label);


            }
        }
        // // console.log(processing item of  + item +  complete);
    }
    alert(END: stockInit());
}

Olayların bu şekilde yapıyorum neden Ve bu yüzden ne olsun olsun ... tüm Gerçekten ben arka uç koduna erişim olmadığını söyleyebilirim ... sormayın lütfen ...

Oluştur 26/06/2009 saat 15:17
kaynak kullanıcı
Diğer dillerde...                            


1 cevaplar

oy
13

Sanırım bu senin sorunun

temelde çözüm ayrıca bu yapmaktır:

optionInput.defaultChecked = selected;

ya da alternatif olarak DOM onay takıldıktan sonra kontrol parametresini ayarlamak

Cevap 26/06/2009 saat 15:30
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more