Это статические файлы (html, css, js), которые отображаются через web-view (встроенный браузер), имеют доступ к некоторому нативному функционалу платформы (устройства, сенсоры, файловая система) посредством плагинов. В случае наличия соединения могут общаться с удаленными серверами, но это не обязательно.
А что именно непонятно-то? Пишите в localStorage при переходе, читаете из localStorage при загрузке формы.
Но обычно для этого используются параметры get запроса.
Интервалы автоматически не могут остановиться, если не был сохранен их идентификатор и явно не был вызван clearInterval.
В реакте - тоже самое. Даже если компонент стал неактивным интервалы будут выполняться. Поэтому если не хотите утечек - сохраняйте идентификаторы и явно вызывайте clearInterval в componentWillUnmount.
Вот посмотрите пример: https://jsbin.com/zefopuw В консоли будет видно, что несмотря на то, что компоненты были удалены - интервалы все еще работают.
Попробуйте отфильтровать каждую серию jsfiddle.net/h5y3gddy или напишите функцию, которая будет возвращать уже нужный массив и используйте ее при формировании графика.
Попробуйте пообрабатывать submit на самой форме. Если будет работать, то скорее всего проблема либо в области видимости (невозможно найти в документе указанный селектор), либо в том, что событие внутри формы не является событием на document и, соответственно, не обрабатывается.
Парсить строку надо. Либо регулярками, либо строковыми методами, в зависимости от структуры строки, а потом нужный участок преобразовывать в JSON или map'ать.
1. Нумерацию вам нужно отвязать от модели и пересчитывать каждый раз при добавлении/изменении для всех элементов после того на которого было произведено воздействие.
2. Вам нужно изменить верстку текущей строки так, чтобы в ячейках появились поля ввода.
ps: данные лучше хранить где-то, обрабатывать их и отрисовывать. Почитайте про MVC.