Я пытаюсь создать аккордеон Bootstrap, используя Knockout foreach
с редактируемым заголовком. При двойном щелчке по имени аккордеона имя должно стать полем ввода (вероятно, не самая лучшая идея для этого), которое должно сохранить изменения при щелчке ввода или щелчке за пределами этой области (изменение фокуса). Моя проблема в том, что когда пользователь дважды щелкает имя, чтобы редактировать его, панель разворачивается и сворачивается, а некоторым трудно редактировать.
<div class="col-lg-12 panel m-t-5 panel-group" id="mAccordion">
<div class="panel panel-default" data-bind="foreach:{ data: selectedItemM, as: 'mod'}">
<div class="panel-heading ui-sortable-handle" style="border-color:black; background-color:black; margin-bottom: 2px" data-bind="visible:!IsDeleted()">
<i class="fas fa-trash-alt pull-right" style="color:red; cursor:pointer" data-bind="event:{'click':$root.deleteM}"></i>
<a class="accordion-toggle accordion-inner" style="color:#fff; text-decoration:none;cursor:pointer;" data-bind="attr:{href:'#mPanelBody_'+Id}" data-toggle="collapse" data-parent="#modAccordion">
<h4 class="panel-title" data-bind="attr:{id:'header_'+Id}, text: Name, event:{'dblclick':$root.editM}" style="color:white;cursor: pointer; width:30%"></h4>
<input type="text" class="panel-title" data-bind="attr:{id:'input_'+Id}, textInput: Name,valueUpdate: 'afterkeydown', event:{keypress:$root.renameM}" style="color:white;display:none; background-color:black; width:30%;" />
</a>
</div>
<div class="panel-collapse accordion-sub collapse" data-bind="attr:{id:'mPanelBody_'+Id}, visible:!IsDeleted()"></div>
</div>
</div>
Можно сделать имя аккордеона просто редактируемым по двойному щелчку (или простому щелчку), ничего не делая с аккордеоном (развернуть или свернуть) и развернуть или свернуть его, просто щелкая за пределами области имени, на пустое место из шапки?