Обновление: я до сих пор не понял этого, но увидел Jquery - Jeditable: как восстановить нередактируемый без обновления страницы , что похоже на то, что я хочу сделать. Пытался включить его, но я не уверен, что я делаю это правильно, так как для его работы требуется 2 клика (или 2 ctrl-клика).
$ ( "div.wanttoedit"). Нажмите (функция (е) {
if (e.ctrlKey) {
$ ( 'Div.wanttoedit') addClass ( 'non_edit') removeClass ( 'редактировать') отвязать ( 'click.editable');...
alert ('Ctrl был нажат');
} else {
предупреждение («Ctrl не был нажат»);
$ ( 'Div.wanttoedit') addClass ( 'редактировать') removeClass ( 'non_edit');..
$ (».Edit ') .editable ('? HTTP: //#request.host#/vp/metrics.cfc метод = returnformat updateMetrics & = равнину);
}
});
<div id="#results.id#" class="wanttoedit non_edit">#val(value_disp)#</div>
Опять же, любая помощь очень ценится. Спасибо.
Я все еще очень плохо знаком с jquery / javascript / jeditable, поэтому, пожалуйста, будьте добры и откровенны, насколько это возможно. :)
У меня есть таблица с метками строк = имя метрики и метками столбцов = месяцы. Ячейки содержат соответствующие значения метрик. Я хочу, чтобы можно было щелкнуть левой кнопкой мыши, чтобы значение метрики можно было редактировать, а также щелкнуть левой кнопкой мыши (или щелкнуть правой кнопкой мыши, щелкнуть при нажатой клавише Shift и т. Д.) И указать причину пропуска метрики ( если бы это было). Эти две вещи обновлены в двух разных таблицах в моей базе данных, но обе они связаны с метрическим идентификатором / именем и периодом / месяцем, с которым они связаны.
Мне удалось настроить редактирование значения метрики одним щелчком левой кнопки мыши с помощью jeditable, но до сих пор мне не удавалось найти способ заставить поле также разрешить всплывающее окно с другим щелчком в диалоговом окне. ввести информацию о пропусках.
Любая помощь будет искренне признательна, особенно если вы сможете облегчить понимание этой довольно простой девушке.
Я использую Coldfusion (не уверен, что это необходимые знания, но подумал, что упомяну об этом на всякий случай) и могу предоставить любые фрагменты кода по мере необходимости, чтобы вы могли помочь мне исправить это.
Вот пример моего кода, я использую вкладки jquery, поэтому редактируемое место находится в другом месте, чем обычно (надеюсь, я включаю все, что вам нужно увидеть ... если не просто дайте мне знать, что Я могу пропустить)
$ (документ) .ready (function () {
$ ("# cymteamtabs"). tabs ({
кеш: false,
load: function (event, ui) {
$ ( ".EditMetric ") .editable (" HTTP: //#request.host#/vp/metrics.cfc метод = updateMetrics & returnformat = равнину?");
},
ajaxOptions: {cache: false}
}
);
<cfloop query="metrics">
<tr>
<td>#metrics.mdisplay#</td>
<cfloop query="dates">
<td id="#results.id#" class="editMetric">#val(value_disp)#</td>
</cfloop>
</tr>
</cfloop>
Да, и просто чтобы убедиться, что мне ясно, что я хочу, чтобы это делалось .... если я щелкну по полю Ctrl, появится всплывающее окно, позволяющее ввести информацию о пропусках (редактирование отключено ). После закрытия этого диалогового окна, если я щелкну левой кнопкой мыши по полю, оно активирует редактирование этого поля, поэтому, по сути, я не хочу полностью отключать jeditable, я просто хочу, чтобы он переходил в режим гибернации между тем временем, когда пользователь нажимает Ctrl на поле и когда всплывающее диалоговое окно из-за этого закрывается.
Заранее спасибо.