Якщо оператор на сторінці aspx


96

Я хочу написати базовий оператор if на моєму сайті, щоб відобразити або елемент 1, або пункт 2, залежно від того, якщо для змінної встановлено значення true.

Я не надто знайомий з .NET і потребую невеликої допомоги з базовою структурою того, як отримати оператор if для роботи на сторінці aspx

Відповіді:


191

якщо метою є показати або приховати частину сторінки, ви можете зробити наступні дії

1) оберніть його розміткою

<% if(somecondition) { %>
   some html
<% } %>

2) Оберніть деталі в елементі керування Panel і в коді позаду використовуйте оператор if, щоб встановити властивість Visible панелі.


XIII я хочу перевірити перемикач, якщо якась змінна є істинною, як це зробити.?
Іхсан чахі

зразок коду - <input type = "radio" id = "Accept" name = "optpost" value = "1" <% if (item.Accept == 1) {checked = "checked"}%> class = "Default" />
Іхсан чахі

Я намагався, але це не працює. це мій код, <% if (false) { %> <asp:Label ID="lblQuantity" runat="server" Text='<%# Convert.ToDouble(Eval("Quantity")).ToString("#####0") + " " + Eval("unitMsr") %>'>></asp:Label> <% } %>але він все одно відображається
Джон Нгуєн

@JohnNguyen Чи можете ви створити для цього нове запитання та скласти код більш читабельним способом?
Kris van der Mast

@JohnNguyen Це тому, що ваші націнки порушені, врешті-решт, тут:%> '>> </ asp: Label> Це один> набагато. Сподіваюся, це вас не турбує вже 3 роки xD
Eric Sjöström

42

Просто використовуйте простий код

<%
if(condition)
{%>

html code

<% } 
else 
{
%>
html code
<% } %>

9

Як правило , ви б просто дотримуватися коду в Page_Loadу вашій .aspxфоновому коді сторінки.

if (someVar) {
    Item1.Visible = true;
    Item2.Visible = false;
} else {
    Item1.Visible = false;
    Item2.Visible = true;
}

Це передбачає, що ви вже виклали Item1і Item2виклали на сторінці.


Я погоджуюся з Даніелем ДіПаоло щодо того, як найкраще обробляти перемикання елементів відображення сторінки ASP.NET на основі істинної / помилкової змінної.
JohnH

4

Щоб використовувати C # (С # Сценарій був ініціалізований у 2015 році) на сторінці ASPX, ви можете використати такий синтаксис.

Початковий тег: - <% Кінцевий тег: - %> Будь ласка, переконайтесь, що весь код C # повинен знаходитися всередині цього <%%>.

Приклад синтаксису: -

  • <%@ Import Namespace="System.Web.UI.WebControls" %> (Для імпорту простору імен) Посилання на деякі основні простори імен для роботи зі сторінкою ASPX.

    <%@ Import Namespace="System.Web.UI.WebControls" %> <%@ Import Namespace="System.Diagnostics" %> <%@ Import Namespace="System" %> <%@ Import Namespace="System.Web" %> <%@ Import Namespace="System.Web.UI" %> <%@ Import Namespace="System.IO" %>

Код C #: -

`<%
if (Session["New"] != null)
{
    Page.Title = ActionController.GetName(Session["New"].ToString());
}
%>`

Особливості сценарію C #:

  • Не потрібно компіляції. Виконання часу виконання відбувається як Java Script.

Перш ніж використовувати скрипт C #, переконайтесь у наступному: -

  • Ви перебуваєте в WebForm. Не у WebForm із головною сторінкою.
  • Якщо ви перебуваєте у WebForm з основною сторінкою, переконайтеся, що ви написали сценарій C # у файлі сторінки головного.
  • Скрипт C # можна вставити де завгодно на сторінці aspx, але після метадекларації сторінки, наприклад

    <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Profile.master.cs" Inherits="OOSDDemo.Profile" %>

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication3.WebForm1" %> (Для веб-форми)


3

Повна відповідь на необов’язковий вміст у заголовку сторінки VB.NET aspx із використанням головної сторінки:

 <%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/Site.Master" CodeBehind="some_vb_page.aspx.vb" Inherits="some_vb_page" %> 
 <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">          
     <% If Request.QueryString("id_query_param") = 123 Then 'Add some VB comment here, 
         'which will not be visible in the rendered source code of the aspx page later %>        
         <!-- add some html content depending on -->
         <!-- the condition in the if statement: -->                
         <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript" charset="utf-8"></script>
     <% End If %>
</asp:Content>

Де ваша поточна URL-адреса сторінки приблизно така:

http://mywebpage.com/some_vb_page.aspx?id_query_param=123



1

Ось простий, написаний у VB для сторінки ASPX:

                If myVar > 1 Then
                    response.write("Greater than 1")
                else
                    response.write("Not!")
                End If

-11

C #

  if (condition)
    statement;
  else
    statement;

vb.net

  If [Condition] Then
    Statement
  Else
    Statement
  End If

Якщо ще приклади з вихідним кодом ... If..else у Asp.Net

Скоромовка


Я не думаю, що він боровся із синтаксисом if, більше пов’язаним з тим, як включити це на сторінку ASP із HTML-кодом у блоки операторів.
dmoney

пам’ятайте, що це aspx і йому потрібні теги бритви!
Стівен Блек
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.