Как добавить строку в меню опций X раз в jquery

#php #jquery

#php #jquery

Вопрос:

у меня есть меню опций, которые поступают из базы данных, если я добавляю новый пункт меню опций, это меню опций не обновляется, тогда я добавляю функцию успеха ajax, чтобы добавить этот пункт меню в меню опций:

 success: function(results) {
   if (results.ok) {
   list();
   var last_insert_id = results.last_inserted_id;
$('#katID').append($('<option>', {
   value: last_insert_id,
   text: here how can i add result variable times line ?
})); 
  

как я могу добавить результирующую переменную times — (строка)?

Пример :

если число = 2, то заголовок был: — — Это title.

или

если число = 5, то заголовок был: — — — — — Это заголовок.

   $("#katID").change(function(){
      var selectedtext = $( "#katID option:selected" ).text();
      var result = selectedtext.split(" - ");
      console.log(result);
      var number = (result.length);
      var number = (number-1);
      alert(number);

  });
     
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="form-control form-control-sm" id="katID" name="katID">
<option value="">Select</option>
<option value="0">Top Menu</option>
<option value="96">COMPUTERS</option>
<option value="100"> - DESKTOPS</option>
<option value="101"> -  - ASUS DESKTOPS</option>
<option value="97"> - NOTEBOOKS</option>
<option value="102"> -  - ASUS NOTEBOOKS</option>
<option value="94">TELEVISIONS</option>
<option value="99"> - LCDS</option>
<option value="103"> - PLASMA</option>
<option value="104"> -  - SONY PLASMA</option>
</select>  

Комментарии:

1. В более новом браузере вы можете использовать метод заполнения, такой как: new Array(7).fill('-').join('') . Или: '-'.repeat(3)

2.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

Ответ №1:

Вы можете запустить инструкцию с помощью простого цикла for:

 var appendTimes = /* Whatever you want the number to be */
for(var i = 0; i < appendTimes; i  ) {
  $('#katID').append($('<option>', {
     value: (last_insert_id   i),
     text: "-".repeat(i   1)   title
  })); 
}
  

Комментарии:

1. я хочу добавить простое число строк перед заголовком. похоже на это, — — Это заголовок.

2. если число = 2, то заголовок был: — — Это заголовок. ИЛИ, если число = 5, тогда заголовок был: — — — — — Это заголовок.

3. @DoganOzer Просто используйте, "-".repeat(i) чтобы повторить тире i раз или "-".repeat(i 1) добавить дополнительный.

4. Я сделал это, но как я могу добавить эту опцию к id? $(‘#katID’).append($this(id).append(‘<option>’, { похоже на это?

5. <значение параметра=»157″> ТЕЛЕВИЗОРЫ</option> мне нужно добавить значение = 157