Sas*_*u H 21 jquery events onclick html-lists
我想传递<li> id or value的onclick事件.这是我现有的代码.
<li onclick="getPaging(this.value)" id="1" value="1">1</li>
<li onclick="getPaging(this.value)" id="2" value="2">2</li>
Run Code Online (Sandbox Code Playgroud)
这是javascript代码
function getPaging(str)
{
$("#loading-content").load("dataSearch.php?"+str, hideLoader);
}
Run Code Online (Sandbox Code Playgroud)
Ani*_*ish 23
试试这样......
<script>
function getPaging(str) {
$("#loading-content").load("dataSearch.php?"+str, hideLoader);
}
</script>
<li onclick="getPaging(this.id)" id="1">1</li>
<li onclick="getPaging(this.id)" id="2">2</li>
Run Code Online (Sandbox Code Playgroud)
或不显眼的
$(function() {
$("li").on("click",function() {
showLoader();
$("#loading-content").load("dataSearch.php?"+this.id, hideLoader);
});
});
Run Code Online (Sandbox Code Playgroud)
使用只是
<li id="1">1</li>
<li id="2">2</li>
Run Code Online (Sandbox Code Playgroud)
Dav*_*ang 11
<li>s没有value- 只有表格输入吗.实际上,您甚至不应该value在HTML的<li>s中包含该属性.
你可以依赖.innerHTML:
getPaging(this.innerHTML)
Run Code Online (Sandbox Code Playgroud)
或者也许是id:
getPaging(this.id);
Run Code Online (Sandbox Code Playgroud)
但是,从JavaScript代码添加单击处理程序更容易(更好的做法),而不是将它们包含在HTML中.看到你已经在使用jQuery,可以通过将HTML更改为:
<li class="clickMe">1</li>
<li class="clickMe">2</li>
Run Code Online (Sandbox Code Playgroud)
并使用以下JavaScript:
$(function () {
$('.clickMe').click(function () {
var str = $(this).text();
$('#loading-content').load('dataSearch.php?' + str, hideLoader);
});
});
Run Code Online (Sandbox Code Playgroud)
这将为您<li class="clickMe">的所有s 添加相同的单击处理程序,而无需您onclick="getPaging(this.value)"为每个单独复制代码.