Подгрузка html кода формы из отдельного файла только при клике

1 23
S_A_N_T_A
На сайте с 23.11.2009
Offline
154
#21
Sitealert:
S_A_N_T_A, чёта Вы не догоняете...:(
Оптимизайка, конечно затейник, довольно остроумно решил задачу, но Вашим условиям это решение действительно удовлетворяет.

Please посмотрите мое прошлое сообщение. Там вроде подробно все описал.

Ваш код:


<div id="call">
<input type="radio" name="show" id="show1" /> - вот id номер 1
<input type="radio" name="show" id="show2" /> - вот id номер 2
<form>
<input class="secret1" type="text" value="secret1"/>
<input class="secret2" type="text" value="secret2"/>
<input class="nosecret" type="text" value="no secret"/>
</form>
</div>
<label for="show1">Link 1</label>
<label for="show2">Link 2</label>

По вашему примеру

При клике по кнопке идет сценарий либо для show1, либо сценарий для show2

У меня может быть только 1 ID например только show1

То есть обе ссылки выглядят примерно так (у них общий show1):

кнопка 1

<a data-target="#show1">кнопка 1</a>

кнопка 2

<a data-target="#show1">кнопка 2</a>

Если вы по прежнему подтверждаете, что заблуждаюсь я сам. Ок! Буду искать решение дальше. Мне все равно придется искать решение дальше! И позже, если конечно разберусь. Опубликую его тут. (Вероятно я сам туплю)

S
На сайте с 30.09.2016
Offline
469
#22
S_A_N_T_A:
При клике по кнопке идет сценарий

Прикол оптимизайкиного решения в том, что там вообще никаких сценариев не идёт. Происходит просто выбор нужного варианта.

S_A_N_T_A:

У меня может быть только 1 ID например только show1
Это ещё с какого перепуга? У нескольких разных кнопок не может быть одинакового id.
S_A_N_T_A:
Если вы по прежнему подтверждаете, что заблуждаюсь я сам.
Вы не то чтобы заблуждаетесь, скорее не понимаете.
S_A_N_T_A:
Буду искать решение дальше. Мне все равно придется искать решение дальше! И позже, если конечно разберусь. Опубликую его тут.
Ваша задача имеет 100500 решений. Опубликованное Вами будет одним из них.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
S
На сайте с 13.10.2014
Offline
171
#23
S_A_N_T_A:
Было бы круто использовать несколько id для div, но я так понимаю, что так нельзя.

Воспользуйтесь class. Там можно

присвойте

<input class="form form1 form2">

<input class="form form1 form3">

<input class="form form2">

<input class="form form3">

и т.д.

а далее

на джейквери

$('#button1').click(function(){

$('.form').css('display', 'none');

$('.form1').css('display', 'block');

return false;

})

S_A_N_T_A
На сайте с 23.11.2009
Offline
154
#24
silicoid:
Воспользуйтесь class. Там можно

присвойте
<input class="form form1 form2">
<input class="form form1 form3">
<input class="form form2">
<input class="form form3">

и т.д.
а далее
на джейквери
$('#button1').click(function(){
$('.form').css('display', 'none');
$('.form1').css('display', 'block');
return false;
})

Знаю что что то делаю не так, так как не знаю js

Но что именно

<a nclick="Pryachem" data-target="#call">Кнопка 1</a>

<a nclick="Pryachem2" data-target="#call">Кнопка 2</a>

<div id="call">

<form>

<div class="pole1">Поле 1</div>

<div class="pole2">Поле 2</div>

</form>

</div>

<script type="text/javascript">

var Pryachem = click(function(){

$('.pole1').css('display', 'none');

return false;

})

</script>

Хочу при клике по "Кнопка 1" спрятать "Поле 1".

---------- Добавлено 24.10.2018 в 10:29 ----------

РЕБЯТ ЕСЛИ КОМУ ПОНАДОБИТСЯ, ВОТ РЕШЕНИЕ:

<a data-target="#call" class="first">Кнопка 1</a> (ДОБАВЛЯЕМ КЛАСС FIRST)

<a data-target="#call" class="second">Кнопка 2</a> (ДОБАВЛЯЕМ КЛАСС SECOND)

<div id="call">

<form>

<div class="pole1">Поле 1</div>

<div class="pole2">Поле 2</div>

</form>

</div>

<script>

$(function(){

$('.first').click(function(){

$('.pole1').show();

$('.pole2').hide();

});

$('.second').click(function(){

$('.pole2').show();

$('.pole1').hide();

});

});

</script>

S
На сайте с 13.10.2014
Offline
171
#25

В общем-то это самое простое решение.

только сразу хочу предупредить, одновременный запуск show и hide без параметров, при адаптивной верске, например, может вызывать "раскоряку" среди элементов на время, пока скрипт отрабатывает.

чтоб это пофиксить лучше скрывать элемент быстро hide(1) а показывать более-менее медленно show(500), для некой анимации

еще возможен вариант последовательного исполнения, например

$(element).hide(200,function(){

$(element2).show(300);

})

но я в последнее время вместо show/hide предпочитаю fadeOut/fadeIn

S
На сайте с 30.09.2016
Offline
469
#26

S_A_N_T_A, а мне любопытно, зачем Вам вот это

data-target="#call"

И да, надпись

ДОБАВЛЯЕМ КЛАСС
некорректна. Вы здесь не добавляете класс, а присваиваете.

И вот этот элемент в приведенном коде лишний

<div id="call">
Он нигде не используется.
1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий