xml разбор изисква attr?! опора?

Опитайте това на вашата JavaScript конзола (Chrome или нещо подобно) с jQuery.

var jo = $("<xml required=\"true\" name=\"lol\"></xml>"); //test xml
jo.attr("required"); //returns "required" instead of true
jo.attr("name"); //returns correct "lol"
jo.prop("required"); //returns undefined
jo.prop("name"); //returns undefined

Някой там с работещо решение за получаване на правилната изисквана стойност (true/false) на този xml?

.prop() работи само с html като <input>.


person Cracker0dks    schedule 23.05.2013    source източник
comment
Jquery е HTML двигател, а не XML анализатор?! Защо бихте искали да направите това?   -  person Liam    schedule 23.05.2013
comment
но можете да го използвате като xml анализатор :). Искам да генерирам html формуляр от xml   -  person Cracker0dks    schedule 23.05.2013
comment
Можете, но това не е предназначено да прави....   -  person Liam    schedule 23.05.2013


Отговори (1)


Кодът на jQuery има свои собствени мнения относно атрибутите и тяхната природа, базирани на техните имена и семантика от света на HTML. Ето защо "required" ви дава "required" като стойност на атрибута.

Можете да опитате да използвате .getAttribute() директно, въпреки че резултатите може да зависят от браузъра:

jo[0].getAttribute("required");

Функцията .prop() работи само за HTML DOM елементи, защото разчита на браузъра, създаващ обекти със свойства, отразяващи стойности на атрибути, анализирани от източника.

person Pointy    schedule 23.05.2013