cari

Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk melaksanakan row hover dalam Blazor wasm

<p>Saya mempunyai komponen jadual Blazor yang berubah berdasarkan bilangan baris pembolehubah dalam koleksi: </p> <pre class="brush:php;toolbar:false;"><table id="MyTable" class="table table-hover"> <kepala> <tr> <th>Nama projek</th> <th>Penerangan</th> <th>Pemuat naik</th> <th>Tarikh Muat Naik</th> </tr> </kepala> @foreach (var item dalam Item) { <tbody> <tr> <th>@item.Name</th> <th>@item.Description</th> <th>@item.UserName</th> <th>@item.UploadDate.ToString("dd-MM-yyyy")</th> <th><button type="button" class="btn btn-primary" @onclick="() => DoSomething()">Lakukan</button></th> </tr> </tbody> } </table></pre> <p>Apa yang perlu saya lakukan ialah, apabila tetikus melayang di atas baris,<em>hanya</em>elemen khusus baris itu menjadi didayakan. </p> <p>Sebagai contoh, jika jadual ini mempunyai 10 baris (1-10), apabila saya menuding di atas baris 1, hanya butang untuk baris 1 harus kelihatan dan boleh diklik. Butang lain yang baris induknya tidak mempunyai tuding tidak boleh didayakan. </p> <p>Dalam Blazor, bagaimana saya boleh mendayakan butang <em>pada baris tertentu itu</em> </p>
P粉425119739P粉425119739552 hari yang lalu543

membalas semua(1)saya akan balas

  • P粉252116587

    P粉2521165872023-08-14 11:48:16

    Seperti yang dinyatakan dalam ulasan, terdapat beberapa sebab mengapa anda mungkin tidak mahu menunjukkan elemen kanak-kanak pada tetikus: ia bergantung pada pengguna yang menggunakan tetikus. Sebagai alternatif, keseluruhan baris boleh dibuat boleh diklik, yang mungkin memberikan pengalaman pengguna yang lebih baik.

    Namun demi kesempurnaan, inilah cara untuk menyelesaikan masalah yang saya tanya:

    Dalam halaman Razor, tambahkan pemilih Id CSS untuk tag HTML baris (ibu bapa) dan butang (anak):

    @foreach (var item in Items)
        {
            <tbody>
                <tr id="FileTableRow">
                    <th>@item.Name</th>
                    <th>@item.Description</th>
                    <th>@item.UserName</th>
                    <th>@item.UploadDate.ToString("dd-MM-yyyy")</th>
                    <th><button id="FileTableRowButton" type="button" class="btn btn-primary" @onclick="() => DoSomething()">Do Work</button></th>
                </tr>
            </tbody>
        }

    Kami kemudiannya boleh menggunakan CSS untuk menggunakan gaya pada butang (anak) pada tuding di atas baris (ibu bapa):

    #FileTableRowButton {
      visibility: hidden;
    }
    
    #FileTableRow {
      &:hover {
        #FileTableRowButton {
          visibility: visible;
        }
      }
    }

    Bergantung pada kes penggunaan anda, anda mungkin mahu menggunakan gaya yang berbeza. Contohnya, gunakan paparan: tiada; dan bukannya keterlihatan: tersembunyi;

    balas
    0
  • Batalbalas