Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   как сделть запрет на удаление в инпуте, но возможность добавлять была (https://javascript.ru/forum/misc/63961-kak-sdelt-zapret-na-udalenie-v-inpute-no-vozmozhnost-dobavlyat-byla.html)

Svyatik95 11.07.2016 16:12

как сделть запрет на удаление в инпуте, но возможность добавлять была
 
поясню тему, в общем есть несколько input-ов суть их заключается в том что содержат адреса сайтов, основные адреса то есть, вот так "http://youtube.com/" нужно что бы эту ссылку удалить нельзя было а вот добавить к ней можно было, есть код, работает только на 1 инпут, как сделать на несколько?
var $inp = $(".user_youtube_1"), prevVal = '',
    reference = "http://youtube.com/";
 
function change (val) { Эту функцию пишешь один раз
    var ind = val.indexOf(reference);
   
    if (ind !== 0) {
        $inp.prop("value", prevVal || reference);
    } else {
        prevVal = val;
    }
}
 
$inp.on("input", function () { Это событие применяешь для каждого input
    var val = $(this).prop("value");
    change(val);
});


<input type="text" value="http://youtube.com/" style="width: 500px;" class="user_linkedin_1">

рони 11.07.2016 16:31

нельзя стереть начальное значение input на jquery
 
Svyatik95,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {

function change () {
     this.value.indexOf(this.defaultValue) && (this.value = this.defaultValue);
}

$(".user_linkedin_1").on("input", change);

});
  </script>
</head>

<body>
<input type="text" value="http://youtube.com/" style="width: 500px;" class="user_linkedin_1"><br>
<input type="text" value="http://www.yandex.ru/" style="width: 500px;" class="user_linkedin_1">
</body>
</html>

Svyatik95 11.07.2016 16:38

Рони, спасибо большое))))))в очередной раз))))

shultz 09.02.2018 11:09

не работает под ios safari

рони 09.02.2018 11:36

shultz,
а так?
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script>
window.addEventListener('DOMContentLoaded', function() {
function change () {
     this.value.indexOf(this.defaultValue) && (this.value = this.defaultValue);
}
[].forEach.call(document.querySelectorAll('.user_linkedin_1'), function(item) {
        item.addEventListener('input', change, false);
    });

 });
</script>
</head>

<body>
<input type="text" value="http://youtube.com/" style="width: 500px;" class="user_linkedin_1"><br>
<input type="text" value="http://www.yandex.ru/" style="width: 500px;" class="user_linkedin_1">
</body>
</html>

j0hnik 09.02.2018 11:38

рони, :blink: ios safari не дружит с jquery?

рони 09.02.2018 11:44

j0hnik,
не знаю :)


Часовой пояс GMT +3, время: 01:58.