Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

redinsane

Новачок
  
  • Публікації

    8
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем redinsane

  1. вставил, но так и не заработал автокомплит. 

     

    <script type="text/javascript"><!--
    
    
    $('input#stark<?php echo $module_row; ?>').autocomplete({
      delay: 0,
      source: function(request, response) {
        $.ajax({
          url: 'index.php?route=catalog/product/autocomplete&token=<?php echo $token; ?>&filter_name=' +  encodeURIComponent(request.term),
          dataType: 'json',
          success: function(json) {   
            response($.map(json, function(item) {
              return {
                label: item.name,
                value: item.product_id
              }
            }));
          }
        });
      }, 
      select: function(event, ui) {
        //$('#featured-stark<?php echo $module_row; ?>' + ui.item.value).remove();
        
        $('#featured-stark<?php echo $module_row; ?>').append('<div id="featured-stark<?php echo $module_row; ?>' + ui.item.value + '">' + ui.item.label + '<img src="view/image/delete.png" /><input type="hidden" value="' + ui.item.value + '" name="stark_module[<?php echo $module_row; ?>][stark_ids][]" /></div>');
    
        $('#featured-stark<?php echo $module_row; ?> div:odd').attr('class', 'odd');
        $('#featured-stark<?php echo $module_row; ?> div:even').attr('class', 'even');
        
        //data = $.map($('#featured-stark<?php echo $module_row; ?> input'), function(element){
        //  return $(element).attr('value');
        //});
                
       // $('input[name=\'stark\']').attr('value', data.join());
              
        return false;
      },
      focus: function(event, ui) {
            return false;
        }
    });
    
    $('#featured-stark<?php echo $module_row; ?> div img').live('click', function() {
      $(this).parent().remove();
    });
    //--></script>
    
              <?php $module_row++; ?>
              <?php } ?>
              <tfoot>
                <tr>
                  <td colspan="6"></td>
                  <td class="left"><a onclick="addModule();" class="button"><?php echo $button_add_module; ?></a></td>
                </tr>
              </tfoot>
            </table>
          </form>
        </div>
      </div>
    </div>
    <script type="text/javascript"><!--
    var module_row = <?php echo $module_row; ?>;
    function addModule() {  
      html  = '<tbody id="module-row' + module_row + '">';
      html += '  <tr>';
      html += '   <td class="left"><input type="text" id="stark<?php echo $module_row; ?>"/><div id="featured-stark<?php echo $module_row; ?>" class="scrollbox"></div><?php $class = "odd"; ?><?php foreach ($module["names"] as $id =>  $product_name) { ?> <?php $class = ($class == "even" ? "odd" : "even"); ?><input type="hidden" name="stark_module[<?php echo $module_row; ?>][stark_ids][]" value="<?php echo $id; ?>" /><?php } ?>' ;
    
      html += '    <td class="left"><input type="text" name="stark_module[' + module_row + '][width]" value="" size="3" /> <input type="text" name="stark_module[' + module_row + '][height]" value="" size="3" /></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][layout_id]">';
      <?php foreach ($layouts as $layout) { ?>
      html += '      <option value="<?php echo $layout['layout_id']; ?>"><?php echo addslashes($layout['name']); ?></option>';
      <?php } ?>
      html += '    </select></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][position]">';
      html += '      <option value="content_top"><?php echo $text_content_top; ?></option>';
      html += '      <option value="content_bottom"><?php echo $text_content_bottom; ?></option>';
      html += '      <option value="column_left"><?php echo $text_column_left; ?></option>';
      html += '      <option value="column_right"><?php echo $text_column_right; ?></option>';
      html += '    </select></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][status]">';
        html += '      <option value="1" selected="selected"><?php echo $text_enabled; ?></option>';
        html += '      <option value="0"><?php echo $text_disabled; ?></option>';
        html += '    </select></td>';
      html += '    <td class="right"><input type="text" name="stark_module[' + module_row + '][sort_order]" value="" size="3" /></td>';
      html += '    <td class="left"><a onclick="$(\'#module-row' + module_row + '\').remove();" class="button"><?php echo $button_remove; ?></a></td>';
      html += '  </tr>';
      html += '</tbody>';
      
      $('#module tfoot').before(html);
    moduleautocomplete(module_row);
      module_row++;
    }
    //--></script> 
    
  2. Вообщем есть проблема с функцией addModule();
    Я начинающий разработчик PHP и яваскрипта практически не знаю. Мне необходимо реализовать модуль по типу баннера и рекомендуемых товаров. Вот код функции addModule мной немного модифицированный. Подскажите как реализовать функцию полноценно чтобы добавлялись все необходимые поля.

     

    <script type="text/javascript"><!--
    var module_row = <?php echo $module_row; ?>;
    function addModule() {  
      html  = '<tbody id="module-row' + module_row + '">';
      html += '  <tr>';
      html += '   <td class="left"><input type="text" id="stark<?php echo $module_row; ?>"/><input type="hidden" name="stark_module[<?php echo $module_row; ?>][stark_ids][]" value="<?php echo $id; ?>" /><div id="featured-stark<?php echo $module_row; ?>" class="scrollbox">';
      
      html += '    <td class="left"><input type="text" name="stark_module[' + module_row + '][width]" value="" size="3" /> <input type="text" name="stark_module[' + module_row + '][height]" value="" size="3" /></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][layout_id]">';
      <?php foreach ($layouts as $layout) { ?>
      html += '      <option value="<?php echo $layout['layout_id']; ?>"><?php echo addslashes($layout['name']); ?></option>';
      <?php } ?>
      html += '    </select></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][position]">';
      html += '      <option value="content_top"><?php echo $text_content_top; ?></option>';
      html += '      <option value="content_bottom"><?php echo $text_content_bottom; ?></option>';
      html += '      <option value="column_left"><?php echo $text_column_left; ?></option>';
      html += '      <option value="column_right"><?php echo $text_column_right; ?></option>';
      html += '    </select></td>';
      html += '    <td class="left"><select name="stark_module[' + module_row + '][status]">';
        html += '      <option value="1" selected="selected"><?php echo $text_enabled; ?></option>';
        html += '      <option value="0"><?php echo $text_disabled; ?></option>';
        html += '    </select></td>';
      html += '    <td class="right"><input type="text" name="stark_module[' + module_row + '][sort_order]" value="" size="3" /></td>';
      html += '    <td class="left"><a onclick="$(\'#module-row' + module_row + '\').remove();" class="button"><?php echo $button_remove; ?></a></td>';
      html += '  </tr>';
      html += '</tbody>';
      
      $('#module tfoot').before(html);
      
      module_row++;
    }
    //--></script> 
    На картинке примерно показано как работает эта функция. При нажатии "добавить модуль" появляется поле №2 без автокомплита. Как переписать функцию чтобы автокомплит заработал и сохраняло значения при выборе товара?

    post-709249-0-32559500-1460109796_thumb.jpg

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.