请原谅我,如果这看起来像一个简单的任务,我对此很新...
我想创建一个逻辑,允许用户在从对话框中编辑时显示或不显示他们的电子邮件地址。我将放置允许用户在对话框中“选择退出”的链接 - 我正在尝试使用该链接将'if'语句中的变量重置为'false''if'语句阻止电子邮件地址被呈现。
这是我的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>
任何帮助将不胜感激......
谢谢!
答案 0 :(得分:1)
如果您使用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 表单中添加“不显示我的电子邮件地址”作为复选框,调整表单发布的控制器操作以处理首选项,并将其作为Action返回的View的ViewBag中的变量。