2013-06-25 2 views
0

Ниже приведен материал, который включен в дескрипцию поля, поэтому я мог бы отобразить итоговую строку.Проблемы, с которыми сталкиваются элементы управления, добавленные с помощью пользовательского описания поля (javascript)

<script type="text/javascript"> 
    var table = AJS.$('<table style="margin-left: 130px;">').append(
          AJS.$('<tr>').append(
"<td style='border: 0px; width: 90px; margin-left: 1px; font-weight: bold; background-color: rgb(204, 255, 255);'><div id='customfield_summary_2:input1'>0</div></td>" 
               ).append(
      "<td style='border: 0px; width: 90px; margin-left: 1px; font-weight: bold; background-color: rgb(204, 255, 255);'><div id='customfield_summary_2:input2'>0</div></td>" 
                 ) 
           ); 
if(AJS.$("#edit-issue-dialog").length) 
{   
    AJS.$("#customfield_11278\\:input1").parent().parent().parent().parent().parent().before(table); 
} 
else 
{ 
AJS.$("#customfield_11278\\:input1").parent().parent().parent().parent().before(table); 
} 
</script> 

    <script type="text/javascript"> 
    AJS.$("#customfield_summary_2\\:input1").text(
"$" + (
    parseInt(AJS.$ 
       ("#customfield_11278\\:input1").val() 
      ) + 
    parseInt(AJS.$ 
       ("#customfield_11279\\:input1").val() 
      ) + 
    parseInt(AJS.$ 
       ("#customfield_11280\\:input1").val() 
      )+ 
    parseInt(AJS.$ 
       ("#customfield_11281\\:input1").val() 
      )+ 
    parseInt(AJS.$ 
       ("#customfield_11282\\:input1").val() 
      )+ 
    parseInt(AJS.$ 
       ("#customfield_11283\\:input1").val() 
      )+ 
    parseInt(AJS.$ 
       ("#customfield_11284\\:input1").val() 
      )+ 
    parseInt(AJS.$ 
       ("#customfield_11285\\:input1").val() 
      ) 
    ).toString() 
    ); 
</script> 

пара вопросов: 1. получить дубликат строки итога (поле, которое добавляется через JQuery), когда закрыть экран редактирования. Как это должно быть решительно. 2. Это сводное пользовательское поле, которое появляется на экране просмотра и экране редактирования. Теперь, когда на экране «Вид», когда я делаю встроенное редактирование для другого поля и сохраняю, это сводное настраиваемое поле (появляется через javascript на стороне клиента) исчезает и необходимо обновить экран после того, как он появится, и значение будет обновлено.

, пожалуйста, дайте мне знать по вышеуказанным запросам. Thank You

ответ

0

Нашли решение как следует @Kuf в комментарии How to develop custom field (plugin) having multiple input fields.

  1. удалить дублированный - иметь каждый раз - удалить таблицу перед добавлением и сохранить все в setInterval, которые разрешают проблему.

    setInterval (функция()

    если (АСО $ ("# редактировать-эмиссионные диалог") длина) {
    AJS $ ("# customfield_11278 \: input1"...). parent(). parent(). parent(). parent(). parent(). before (table); } else { AJS. $ ("# customfield_11278 \: input1"). parent(). parent() .parent(). parent(). before (table); }, 2000)

  2. обновить встроенное редактирование: пр используется setInterval, как показано ниже:

    setInterval (функция() {

    AJS $ ("# customfield_summary_2 \: input1"...) Текст ( "$" + ( ParseInt (АСО $ ("# customfield_11278 \: input1") вал() ) + ParseInt (АСО $ ("# customfield_11279 \: input1"....) вал() ) + ParseInt (АСО $ ("# customfield_11280 \ : input1 "). val() ) + parseInt (AJS. $ (" # customfield_11281 \: input1 "). val()) + ParseInt (АСО $ ("# customfield_11282 \: input1".) Вал() ) + ParseInt (АСО $ ("# customfield_11283 \: input1".).. Вал() ) + ParseInt (. AJS $ ("# customfield_11284 \: input1".) вал() ) + ParseInt (АСО $ ("# customfield_11285 \: input1"..) вал() ) ) .ToString() ) ;, 2000);

Благодаря