Using Mithril to generate HTML for a Bootstrap Accordion -
have problem using mithril generate functioning bootstrap accordion. when write html manually accordion works ok.
<div id="mycontent"> <div class="container"> <div class="row"> <div class="col-md-8 p-t-3"> <div id="bookingaccordion" role="tablist"> <div class="panel panel-default"> <div id="headingone" class="panel-heading" role="tab"> <h4 class="panel-title"> <a data-target="#collapseone" data-toggle="collapse" data-parent="#bookingaccordion"> address , contact details </a> </h4> </div> <div id="collapseone" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingone"> collapsible contact detail form </div> </div> <div class="panel panel-default"> <div id="headingtwo" class="panel-heading" role="tab"> <h4 class="panel-title"> <a data-target="#collapsetwo" data-toggle="collapse" data-parent="#bookingaccordion"> booking details </a> </h4> </div> <div id="collapsetwo" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingtwo"> collapsible booking detail form </div> </div> </div> </div> </div> </div> </div>
i can generate seems same html using code in mithril view.
return m("div.container", [ m("div.row", [ m("div.col-md-8.p-t-3", [ m("#bookingaccordion", {role: "tablist"}, [ m(".panel.panel-default", [ m("#headingone.panel-heading", {role: "tab"}, [ m("h4.panel-title", [ m('a[data-target="#collapseone" data-toggle="collapse" data-parent="#bookingaccordion"]', "address , contact details" ) ]) ]), m('#collapseone.panel-collapse.collapse.in [role="tabpanel" aria-labelledby="headingone"]', "collapsible contact detail form" ) ]), m(".panel.panel-default", [ m("#headingtwo.panel-heading", {role: "tab"}, [ m("h4.panel-title", [ m('a[data-target="#collapsetwo" data-toggle="collapse" data-parent="#bookingaccordion"]', "booking details" ) ]) ]), m('#collapsetwo.panel-collapse.collapse [role="tabpanel" aria-labelledby="headingtwo"]', "collapsible booking detail form" ) ]) ]) ]) ]) ]);
the generated html displays accordion initial state perfectly, there no response (opening or closing) when clicking title anchors. suspect i'm generating data- elements incorrectly i'm stumped.
yes, issue on data-*
attributes, have pass them attributes m
function, this:
m( 'a', { 'data-target': "#collapseone", 'data-toggle': "collapse", 'data-parent': "#bookingaccordion" }, "address , contact details" )
you have same aria-*
, role
attributes.
Comments
Post a Comment