Синтаксис бритвы MVC3, передающий параметр из ссылки для сброса переменной внутри оператора if - PullRequest
0 голосов
/ 07 октября 2011

Простите, если это кажется простой задачей, я довольно новичок в этом ...

Я хотел бы создать логику, которая позволяет пользователю отображать или не отображать свой адрес электронной почты при редактированииэто из диалогового окна.Я помещаю ссылку, которая позволит пользователю «отказаться» внутри диалогового окна, и я пытаюсь использовать ссылку, чтобы сбросить переменную внутри оператора «if» в «false».адрес электронной почты от получения.

Вот мое утверждение if:

<div id="change-email" class="text"> 
    @{

        var showEmail = true;

        if (showEmail == true)
        {
            <text><p><span class="label">My email address: </span>@Model.Email</p></text>
        }
        else (showEmail == false)
        {
            <text><p>No email displayed</p></text>
        }

    }
</div><!--#change-email--> 

А вот код диалогового окна:

<div id="dialog-email" class="modal">

    @using (Html.BeginForm("ChangeEmail", "Account", FormMethod.Post))
    {
        <fieldset>
           // form code here
        </fieldset>
    }

    <p><a href="" class="no-display">Do not display my email address.</a></p>

</div>

Любая помощь будет оценена ...

Спасибо!

1 Ответ

1 голос
/ 07 октября 2011

Если вы сделаете это с jQuery, и у вас все в порядке с адресом электронной почты, все еще доступным в источнике страницы, это будет выглядеть так:

<div id="change-email" class="text"> 
    <p><span class="label">My email address: </span>@Model.Email</p>
</div>
<div id="dialog-email" class="modal">

    @using (Html.BeginForm("ChangeEmail", "Account", FormMethod.Post))
    {
        <fieldset>
           // form code here
        </fieldset>
    }

    <p><a href="" class="no-display">Do not display my email address.</a></p>

</div>
<script type="text/javascript">
$(document).ready(function(){
    $('a.no-display').click(function(){
         $('#change-email p').text('No email displayed.');
    });
});
</script>

Было бы немного сложнее, если бы вы хотели сохранить предпочтение не отображать электронную почту. Возможно, вы захотите добавить «Не отображать мой адрес электронной почты» в качестве флажка в форме ChangeEmail , настроить действие контроллера, которому форма отправляет сообщения для обработки предпочтения, и вернуть его в качестве переменной в ViewBag вида, который возвращает действие.

...