I understand that jquery will allow you to modify attributes with the .attr() method. There are basically two methods:
$(\'#element\').attr(\'attribute\', \'
Try using .prop to deal with boolean that is for supported attributes like selected/disabled/checked e.t.c
$('#element').prop('attribute', true);
from jQuery docs, (an example)
elem.checked returns true (Boolean) Will change with checkbox state
$(elem).prop("checked") returns true (Boolean) Will change with checkbox state
elem.getAttribute("checked") returns "checked" (String) Initial state of the checkbox; does not change
$(elem).attr("checked")(1.6) returns "checked" (String) Initial state of the checkbox; does not change
$(elem).attr("checked")(1.6.1+) returns "checked" (String) Will change with checkbox state
$(elem).attr("checked")(pre-1.6) returns true (Boolean) Changed with checkbox state
HTML attributes are always string values. If you indeed want to set something other than a string, then please consider using jQuery.data()
I use this method in jQuery
jQuery('option').attr("selected", "");
or in JavaScript:
document.querySelector("option").setAttribute("selected", "");
It's just you need to pass an empty string to just set boolean attribute.