Вопрос

У меня есть приложение для учета рабочего времени.При этом я буду отображать даты на неделе по оси X (сверху) и задачи по оси Y (вниз).Как показано ниже, я поставлю значок @ после каждого текстового поля для ввода комментариев к каждой записи.

****************************************************
#    |  Sun | Mon  | Tue  | Wed | Thu |  Fri | Sat |
****************************************************
Task1 ____@ _____@ _____@ _____@_____@______@______@     
Task2 ____@ _____@ _____@ _____@_____@______@______@

Поэтому, щелкнув этот значок @, мне нужно открыть плавающее (или любое другое текстовое поле) для ввода комментариев). Его необходимо скрыть после нажатия отметки X на открытом.Как и следовало ожидать, мне нужно сохранить введенные пользователем комментарии для отправки в базу данных.Итак, как мне сохранить эти комментарии как переменные массива?Я завершил кодирование ввода задач и итоговой таблицы.Но я не могу понять, как открыть плавающее текстовое поле в позиции определенного значка @.А также, скрыв их, я не получаю эффективного способа хранения этих комментариев к этим конкретным задачам на определенный день.

Мой пример Javascript:

function comment(id,day)
{
var textinput="<div id='closeit'>
                  Comments:<input type='text' name='comm["+id+"]["+day+"]' />
               </div>
               <div id='closing' onclick='closecomment("+id+","+day+")'>X
               </div>";
              $('#comms').html(textinput);
}
function closecomment(id,day)
{
        var str='"comm['+id+']['+day+']"';
        var element = document.getElementById(str);
        alert(element.value);
        closeit.style.visibility='hidden' // this is for hiding
    closing.style.visibility='hidden' // this is for hiding
    var newelement = document.getElementById(str);
    alert(newelement.value); //I am able to get the value but I am looking for         storing  it and filling the same text box when it is accessed again
}

Мой пример HTML:

<input type="text" id="comm[0][0]" />
<input type="text" id="comm[0][1]" />
<input type="text" id="comm[1][0]" />
<input type="text" id="comm[1][1]" />

Пожалуйста, помогите мне с примерами, которые могут работать на IE6, IE7 или 8.Моя среда — PHP (фреймворк CodeIgniter), JQUERY, XAMPP.

Это было полезно?

Решение

Для хранения вам вообще не обязательно использовать массив.Просто добавьте скрытый ввод рядом с каждой ссылкой «@» (или в любом месте страницы, если на то пошло) со значимым именем.Когда вы закроете плавающий элемент div, поместите комментарий в скрытый ввод.Тогда ваш php-файл сможет читать и обрабатывать эти значения при отправке.

Отображение плавающего элемента div — это всего лишь вопрос абсолютного (или относительного, если вы хотите отображать его рядом с ячейками таблицы) позиционирования.Попробуйте этот CSS:

div#comms {
  position: absolute;
  width: 300px;
  left: 50%;
  margin-left:-100px;
  height: 200px;
  top: 50%;
  margin-top:-150px;
}

Другие советы

Я думаю, что есть несколько плагинов jQuery для того, чего вы пытаетесь достичь.Взгляните на эту страницу поиска:http://plugins.jquery.com/search/node/inline+edit

Нандер

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top