Самый простой способ отображения подтверждения, когда AJAX добавляет в DOM, - это связать делегированный слушатель события в функции DOMReady вашего представления.
Так как jQuery связывает обработчики событий во время состояния DOMReady
, он не будет связывать дополнительные элементы в функции ajax.success
, если ответ не включает в себя javascript и dataType
является «script», или вы не анализируете [ 116] переменная из функции успеха и событие добавляется вручную.
Предполагается, что элемент с id="treeview"
уже существует.
Это работает, сообщая jQuery отслеживать все щелчки внутри элемента #treeview
, для запускающего элемента . В частности,
href^="delete.php"
означает элемент , с
href
, который начинается с delete.php
. Если он найден, выполняется функция обратного вызова и отображается диалоговое окно подтверждения.
Если вы добавите атрибут class
к элементу привязки recursive.php
, вы можете заменить a[href^="delete.php"]
на a.classname
.
$arr = array(
'text' => ''.$sub_data["n_doc"].''
);
Тогда в вашем javascript
$(document).on('click', 'a.delete', function(e) {
if (!window.confirm('Are you sure you want to delete this file?')) {
e.preventDefault();
}
});
Другой хороший парсер-генератор является ANTLR, который мог бы быть тем, что Вы ищете.
Может быть излишество для Вашего использования, но javacc является превосходным парсером-генератором промышленной силы. Я несколько раз использовал эту программу/библиотеку, его надежное и стоящее учиться, особенно если Вы собираетесь работать с языками и компиляторами. Вот описание программы с упомянутого выше веб-сайта:
Компилятор Компилятора Java [TM] (JavaCC [TM]) является самым популярным парсером-генератором для использования с Java [TM] приложения. Парсер-генератор является инструментом, который читает спецификацию грамматики и преобразовывает ее в программу Java, которая может распознать соответствия к грамматике. В дополнение к самому парсеру-генератору JavaCC обеспечивает другие стандартные возможности, связанные с поколением синтаксического анализатора, такие как здание дерева (через инструмент под названием JJTree, включенный с JavaCC), действия, отладка, и т.д.
Быстрый поиск парсеров-генераторов в Java приводит к JParsec. Я никогда не использовал его - но это вдохновлено библиотекой Haskell, так по определению это должен быть good:-),
Существует выбор множества для stringhandling в Java. Возможно, очень простое java.util.Scanner
и java.util.StringTokenizer
Классы полезны для Вас?
Другой хороший выбор, возможно, the org.apache.commons.lang.text
библиотека. http://commons.apache.org/lang/apidocs/org/apache/commons/lang/text/package-summary.html
Мне нравится JParsec (который я просто обнаружил благодаря Torsten), потому что он не генерирует код... :-) Возможно, менее эффективный, но достаточно для небольших задач.
Я нашел подобную библиотеку, JTopas.
Существует хороший список синтаксического анализатора (генераторы или не) в Источнике Java.