مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

سید سادات

عضویت از 1394/02/22

فیلتر و جستجو در لیست ویو

  • چهارشنبه 10 آبان 1396
  • 13:46
تشکر میکنم

با سلام من یک کدی دانود کردم که خوب کار میکنه اما میخوام این کد رو نسبت بدم به لیست ویو تا فیلت کنه اما نمیشه 

هر دوتا کد  رو گذاشتم لطفا کمکم کنید 

کد اورجینال 

<!DOCTYPE html>
<html>
<head>
<style>
* {
  box-sizing: border-box;
}

#myInput {
  background-image: url('/css/searchicon.png');
  background-position: 10px 12px;
  background-repeat: no-repeat;
  width: 100%;
  font-size: 16px;
  padding: 12px 20px 12px 40px;
  border: 1px solid #ddd;
  margin-bottom: 12px;
}

#myUL {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

#myUL li a {
  border: 1px solid #ddd;
  margin-top: -1px; /* Prevent double borders */
  background-color: #f6f6f6;
  padding: 12px;
  text-decoration: none;
  font-size: 18px;
  color: black;
  display: block
}

#myUL li a:hover:not(.header) {
  background-color: #eee;
}
</style>
</head>
<body>

<h2>My Phonebook</h2>

<input type="text" id="myInput" onkeyup="myFunction()" placeholder="Search for names.." title="Type in a name">

<ul id="myUL">
  <li><a href="#">Adele</a></li>
  <li><a href="#">Agnes</a></li>

  <li><a href="#">Billy</a></li>
  <li><a href="#">Bob</a></li>

  <li><a href="#">Calvin</a></li>
  <li><a href="#">Christina</a></li>
  <li><a href="#">Cindy</a></li>
</ul>

<script>
function myFunction() {
    var input, filter, ul, li, a, i;
    input = document.getElementById("myInput");
    filter = input.value.toUpperCase();
    ul = document.getElementById("myUL");
    li = ul.getElementsByTagName("li");
    for (i = 0; i < li.length; i++) {
        a = li[i].getElementsByTagName("a")[0];
        if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
            li[i].style.display = "";
        } else {
            li[i].style.display = "none";

        }
    }
}
</script>

</body>
</html>

کد من که میخوام وقتی فیلتر میکنه لیست ویو ایتم هاش فیلتر شه

<asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1">
                <ItemTemplate>
                    <ul id="myUL">

                         <li><a href="#"> <%# Eval("id") %></a></li>


                   
                        </ul>


                </ItemTemplate>
            </asp:ListView>
            <br />
            <br />
            <br />
 <script>
function myFunction() {
    var input, filter, ul, li, a, i;
    input = document.getElementById("myInput");
    filter = input.value.toUpperCase();
    ul = document.getElementById("ListView1");
    li = ul.getElementsByTagName("li");
    for (i = 0; i < li.length; i++) {
        a = li[i].getElementsByTagName("a")[0];
        if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
            li[i].style.display = "";
        } else {
            li[i].style.display = "none";

        }
    }
}
</script></div>
    </form>
</body>
</html>

کد اول بدستی کار میکنه و فیلتر میکه اما من میخوام ایتم لست ویو فیلتر بشه لطفا راهنمایی کنین پلیز

پاسخ های این پرسش

تعداد پاسخ ها : 3 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 10 آبان 1396
  • 16:44

باید کد رو بنا به نیاز خودتون تغییر بدید

نمونه اماده ای برای اینکار وجود نداره

به جای لیست ویو از Repeater استفاده کنید و مطابق نمونه عمل کنید

کاربر سایت

سید سادات

عضویت از 1394/02/22

  • چهارشنبه 10 آبان 1396
  • 22:52

برای فروشگاه و نشان دادن اجناس مگه لیست ویو استفاده نمیشه خودتون گفتین سری بیش عین دیوار دیوار از چی استفاده میکنه برای نشان دادن ؟ 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 11 آبان 1396
  • 10:04

میتونه لیست ویو باشه

ولی اگر من بودم از Repeater استفاده میکردم

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)