Jika pernyataan di halaman aspx

98

Saya ingin menulis pernyataan if dasar di situs saya untuk menampilkan item 1 atau item 2 tergantung pada apakah variabel disetel ke true.

Saya tidak terlalu akrab dengan .NET dan membutuhkan sedikit bantuan dengan struktur dasar tentang cara mendapatkan pernyataan if untuk bekerja di halaman aspx

Brad
sumber

Jawaban:

193

jika tujuannya adalah untuk menampilkan atau menyembunyikan bagian dari halaman maka Anda dapat melakukan hal-hal berikut

1) bungkus dengan markup

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

2) Bungkus bagian-bagian dalam kontrol Panel dan dalam codebehind gunakan pernyataan if untuk mengatur properti Visible dari Panel.

Kris van der Mast
sumber
XIII saya ingin memeriksa tombol radio jika beberapa variabel benar, bagaimana melakukannya.?
Ihsan chahi
kode contoh adalah <input type = "radio" id = "Accept" name = "optpost" value = "1" <% if (item.Accept == 1) {Check = "Check"}%> class = "Default" />
Ihsan chahi
Saya mencoba, tetapi tidak berhasil. ini adalah kode saya <% if (false) { %> <asp:Label ID="lblQuantity" runat="server" Text='<%# Convert.ToDouble(Eval("Quantity")).ToString("#####0") + " " + Eval("unitMsr") %>'>></asp:Label> <% } %>tetapi masih muncul
John Nguyen
@JohnNguyen Bisakah Anda membuat pertanyaan baru untuk ini dan membuat kode dengan cara yang lebih mudah dibaca?
Kris van der Mast
@JohnNguyen Itu karena markup Anda rusak, pada akhirnya, di sini:%> '>> </ asp: Label> Ini satu> terlalu banyak. Semoga ini tidak mengganggu Anda selama 3 tahun xD
Eric Sjöström
42

Cukup gunakan kode sederhana

<%
if(condition)
{%>

html code

<% } 
else 
{
%>
html code
<% } %>
عثمان غني
sumber
9

Biasanya Anda hanya akan menempelkan kode di belakang kode halaman Page_LoadAnda .aspx.

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

Ini mengasumsikan Anda sudah mendapatkan Item1dan Item2meletakkan di halaman.

Daniel DiPaolo
sumber
Saya setuju dengan Daniel DiPaolo tentang cara terbaik untuk menangani item tampilan halaman ASP.NET toggled berdasarkan variabel benar / salah.
JohnH
4

Jawaban lengkap untuk konten opsional di header halaman aspx VB.NET menggunakan halaman master:

 <%@ 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>

Di mana url halaman Anda saat ini adalah seperti:

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

Мартин П.
sumber
3

Untuk menggunakan C # (C # Script diinisialisasi pada 2015) pada halaman ASPX Anda dapat menggunakan sintaks berikut.

Tag Awal: - <% Tag akhir: - %> Harap pastikan bahwa semua kode C # harus berada di dalamnya <%%>.

Contoh Sintaks: -

  • <%@ Import Namespace="System.Web.UI.WebControls" %> (Untuk mengimpor Namespace) Referensi ke beberapa ruang nama dasar untuk bekerja dengan halaman 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 # Kode: -

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

Fitur C # Script:

  • Tidak perlu kompilasi. Eksekusi run time terjadi seperti Java Script.

Sebelum menggunakan skrip C # pastikan hal-hal berikut: -

  • Anda berada di WebForm. Bukan di WebForm dengan halaman master.
  • Jika Anda berada di WebForm dengan halaman master pastikan bahwa Anda telah menulis skrip C # Anda di file halaman Master.
  • C # script dapat disisipkan dimanapun di halaman aspx tapi setelah halaman meta deklarasi like

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

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication3.WebForm1" %> (Untuk WebForm)

Sajeeb Chandan
sumber
2
<div>
    <% 
        if (true)
        {
    %>
    <div>
        Show true content
    </div>
    <%
        }
        else
        {
    %>
    <div>
        Show false content
    </div>
    <%
        }
    %>
</div>
Seattle Leonard
sumber
1

Berikut ini yang sederhana yang ditulis dalam VB untuk halaman ASPX:

                If myVar > 1 Then
                    response.write("Greater than 1")
                else
                    response.write("Not!")
                End If
Tom Gullen
sumber
-11

C #

  if (condition)
    statement;
  else
    statement;

vb.net

  If [Condition] Then
    Statement
  Else
    Statement
  End If

Jika lain contoh dengan kode sumber ... If..else di Asp.Net

Rintik

Rintik
sumber
Saya tidak berpikir dia berjuang dengan sintaks if, lebih berkaitan dengan bagaimana memasukkan ini pada halaman ASP dengan kode HTML di blok pernyataan.
dmoney
ingat ini adalah aspx dan membutuhkan pisau cukur!
Steven Black