Рубрика: javascript

Выделить даты в плагине bootstrap datepicker

<input type="text" value="2018-04-28" data-date-format="yyyy-mm-dd" />
.selected {
  background: orange !important;
  color: white !important;
}

var items = [
  new Date('2018/04/15').toISOString(),
  new Date('2018/04/16').toISOString(),
  new Date('2018/04/17').toISOString(),
  new Date('2018/04/18').toISOString()
];

$('input').datepicker({
  beforeShowDay: function(date) {
    var r = {
      enabled: true,
      classes: 'selected'
    };

    return items.indexOf(date.toISOString()) != -1 ? r : {enabled: true};
  }
})

тест https://jsfiddle.net/polyerter/j4npryje/110/

Права в Laravel 5. Часть 2.

В предыдущей статье ссылка, было написано как создать распределение прав пользователей и использование в роуторе и шаблоне. В этой стать хочу написать о том как присваивать пользователю права, а так же пример использования плагина jsTree для построения дерева прав.

Читать далее

Select2. Изменение поля при выборе значения.

Задача состоит в следующем: при выборе номера телефона клиента необходимо в другом поле изменять значение.

 

HTML:

<form action="" name="record">
  <select class="form-control select2" name="client-phone" data-placeholder="Телефон" style="width: 100%;" tabindex="-1" aria-hidden="true">
    <option value=""></option>
    <option value="1">+7 (555) 555-5555</option>
    <option value="2">+7 (651) 651-6516</option>
    <option value="3">+7 (516) 565-1651</option>
  </select>
  <p>или ФИО</p>
  <select class="form-control select2" name="client" data-placeholder="ФИО" style="width: 100%;" tabindex="-1" aria-hidden="true">
    <option value=""></option>
    <option value="1">ФИО 1</option>
    <option value="2">ФИО 2</option>
    <option value="3">ФИО 3</option>
  </select>
</form>

 

JS:

$('form[name="record"] [name=client-phone]').on('select2:select', function(evt) {
  selectClient('client', evt.params.data.id);
});

$('form[name="record"] [name=client]').on('select2:select', function(evt) {
  selectClient('client-phone', evt.params.data.id);
});

function selectClient(name, id) {
  $('form[name="record"] [name="' + name + '"]').select2('val', id);
}
$(".select2").select2();

 


 

В функцию selectClient передаем имя поля которое необходимо изменить и id выбранного значения.

Результат:

https://jsfiddle.net/yqhaw8fd/

Запоминание позиций jQuery UI Sortable

Структура html

<div class="row" id="sortBlock">
       <section class="col-md-4 connectedSortable">
           // содержимое секции
       </section>
       <section class="col-md-4 connectedSortable">
           // содержимое секции           
       </section>
       <section class="col-md-4 connectedSortable">
           // содержимое секции
       </section>
       <section class="col-md-4 connectedSortable">
           // содержимое секции
       </section>
       <section class="col-md-4 connectedSortable">
           // содержимое секции
       </section>
       <section class="col-md-4 connectedSortable">
          // содержимое секции
       </section>
   </div>

 

 

<script> 
   $(".connectedSortable .box-header, .connectedSortable .nav-tabs-custom").css("cursor", "move");
    var root = $('#sortBlock');
    var pathname = window.location.pathname;
    var c = cookies.get(pathname);

    $('> *', root).each(function (index) {
        this.id = 'item-' + index;
    });

    root.sortable({
//        placeholder: "sort-highlight",
        connectWith: ".connectedSortable",
        handle: ".box-header, .nav-tabs",
        forcePlaceholderSize: true,
        'update': function (event, ui) {
            var order = $(this).sortable('serialize');
            cookies.set(pathname, {pathname, order});
        }
    });

    if (c) {
        $.each(c.order.split('&'), function () {
            var id = this.replace('[]=', '-');
            $('#' + id).appendTo(root);
        });
    }
</script>

 

Для использования кук был использован плагин.

Первосточник: Хранитель заметок

Выбрать в select нужный пункт, при загрузки

В jQuery v1.6+:

Имеем список

<select>
    <option value="0">One</option>
    <option value="1">Two</option>
</select>

 

Нужно найти опцию с текстом «two» и поставить её по умолчанию.

var text1 = 'Two';
$("select option").filter(function() {
    //may want to use $.trim in here
    return $(this).text() == text1; 
}).prop('selected', true);

 

Результат: https://jsfiddle.net/uhh6auxb/

В jQuery v1.9+:

$('select').val('1'); // selects "Two"
$('select').val('Two'); // also selects "Two"

 

Результат: https://jsfiddle.net/fba3vweq/

Источник: http://stackoverflow.com/questions/496052/jquery-setting-the-selected-value-of-a-select-control-via-its-text-description