我有一个包含两个DIV标记的视图页面。
If the session[UserType] = ‘Guest’
,然后我需要显示Guest DIV部分。
Else
If session[userType] = ‘Logged’
,然后我不需要显示Guest DIV Section。
<div id="Logged" >
<div class="txtContent">
<label for="product" class="Form_Label">product:<em>*</em></label>
<%= Html.DropDownList("product", " -- Select one -- ")%>
</div>
</div>
<div id="Guest">
<label for="DeliveryMethod">Delivery Method: </label>
<select name="DeliveryMethod" id="Select1" style="width: 100px">
<option value="email">Email</option>
<option value="fax">Fax</option>
<option value="mail">Mail</option>
</select>
</div>
感谢您的回复。
由于
答案 0 :(得分:1)
听起来你可以使用jQuery或partialView。
我的口味是根据决策点显示部分视图。
请记住,您的页面中不应包含任何逻辑,因此您可能需要编写帮助程序来为您做出决定。
作为替代方案,您可以渲染页面,然后调用jQuery方法,该方法将根据您发送的参数返回部分视图。
如果您需要代码,请添加评论,我会发布一些。
修改强>
@Rita,如果您很高兴在页面上显示HTML并且您只想隐藏/显示div,那么这里是代码;
<input type="hidden" id="hdnSessionValue" value="<%=session[UserType]">
<div id="Guest">
<label for="DeliveryMethod">Delivery Method: </label>
<select name="DeliveryMethod" id="Select1" style="width: 100px">
<option value="email">Email</option>
<option value="fax">Fax</option>
<option value="mail">Mail</option>
</select>
</div>
然后你有以下jQuery;
<script language="javascript">
$(document).ready( function () {
if ( $('#hdnSessionValue').val() == "Guest")
$('#Guest').show();
else
$('#Guest').hide();
} );
</script>
<强> EDIT2 强>
根据您必须隐藏/显示的HTML数量,我认为不需要jQuery回发。