提问者:小点点

无法从li jquery获取完整日期值


这看起来很奇怪,但我无法从一个li https://jsfiddle.net/hgo7l41z/1/中获得完整的日期值

null

$("li").click(function () {       
    var a = $(this).attr('value');
    console.log(a);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<ul id="pageno">
    <li value="11/8/2018">1</li>
    <li value="11/8/2018">2</li>
    <li value="11/8/2018">3</li>
    <li value="11/8/2018">4</li>
    <li value="11/8/2018">5</li>
    <li value="11/8/2018">6</li>
    <li value="11/8/2018">7</li>
    <li value="11/8/2018">8</li>
    <li value="11/8/2018">9</li>
    <li value="11/8/2018">10</li>
</ul>

null

你能帮忙吗,谢谢。


共3个答案

匿名用户

您可以使用数据属性来实现这一点

null

$("li").click(function () {       
    var a = $(this).data('value');
    console.log(a);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="pageno">
    <li data-value="11/8/2018">1</li>
    <li data-value="11/8/2018">2</li>
    <li data-value="11/8/2018">3</li>
    <li data-value="11/8/2018">4</li>
    <li data-value="11/8/2018">5</li>
    <li data-value="11/8/2018">6</li>
    <li data-value="11/8/2018">7</li>
    <li data-value="11/8/2018">8</li>
    <li data-value="11/8/2018">9</li>
    <li data-value="11/8/2018">10</li>
</ul>

匿名用户

这个fiddle使用的是一个相当老的jQuery版本(1.3.2)--可能就是这个原因,因为在这里的代码片段(版本3.3.1)中它可以工作(我更改了日期以获得不同的值):

null

$("li").click(function ()
{       
var a = $(this).attr('value');

console.log(a);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="pageno">
    <li value="11/1/2018">1</li>
    <li value="11/2/2018">2</li>
    <li value="11/3/2018">3</li>
    <li value="11/4/2018">4</li>
    <li value="11/5/2018">5</li>
    <li value="11/6/2018">6</li>
    <li value="11/7/2018">7</li>
    <li value="11/8/2018">8</li>
    <li value="11/9/2018">9</li>
    <li value="11/10/2018">10</li>

    </ul>

匿名用户

而不是这个

<li value="11/8/2018">1</li>

使用

<li data-value="11/8/2018">1</li>

$("li").click(function () {       
    var a = $(this).attr('data-value');
    console.log(a);
});

null

$("li").click(function ()
{       
var a = $(this).attr('data-value');

console.log(a);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="pageno">
    <li data-value="11/1/2018">1</li>
    <li data-value="11/2/2018">2</li>
    <li data-value="11/3/2018">3</li>
    <li data-value="11/4/2018">4</li>
    <li data-value="11/5/2018">5</li>
    <li data-value="11/6/2018">6</li>
    <li data-value="11/7/2018">7</li>
    <li data-value="11/8/2018">8</li>
    <li data-value="11/9/2018">9</li>
    <li data-value="11/10/2018">10</li>

    </ul>