Как получить частичное представление, которое будет выгружено при нажатии кнопки отмены внутри него

Я использую .NET MVC3.... и у меня есть частичное представление, которое отображается на странице при нажатии кнопки...

$('#myLink').click(function () {
     $('#partial2Div').load(this.href);
     return false;
});

Но... У меня есть кнопка отмены ВНУТРИ этого частичного представления, когда оно загружается, и я пытаюсь выяснить, как сохранить «исходную» страницу (на ней есть поля редактирования) при нажатии этой кнопки отмены. .. и просто частичное представление исчезнет.


person Nick B    schedule 23.04.2012    source источник
comment
Что вы имеете в виду, сохранить его состояние? Вы касаетесь только partial2Div, так почему остальная часть страницы должна измениться?   -  person McGarnagle    schedule 23.04.2012
comment
Заменяется ли #partialDiv2 новым контентом в вашем примере? (То есть вы хотите, чтобы содержимое, предшествующее вызову .load(), возвращалось?)   -  person Brad Christie    schedule 23.04.2012


Ответы (4)


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

$("cancel").click(function(){
   $("partial2Div").hide();
});
person Baz1nga    schedule 23.04.2012

Вы не можете выгрузить частичный вид без загрузки всей страницы.

Но вы можете показать/скрыть его, просто поместите частичный вид в div и скройте div при нажатии кнопки. Или полностью удалить элемент из DOM.

person Beenish Khan    schedule 23.04.2012

Согласно jQuery API, при загрузке содержимого выполняется обратный вызов. Вы должны быть в состоянии попробовать что-то вроде этого:

$('#myLink').click(function () {
     $('#partial2Div').load(this.href, function(){
         $("#id-of-cancel-button").click(function(){
             $("#partial2Div").hide();
         });
     });
     return false;
});

Просто убедитесь, что вы ссылаетесь на идентификатор кнопки отмены при ее привязке!

person AnteSim    schedule 23.04.2012

Правда разгрузить нельзя.

Вы можете установить стиль div на «display: none» с помощью.

$("partial2Div").hide();

person Spankied    schedule 14.09.2018