在jquery中实现转换并不起作用

时间:2015-07-14 02:05:43

标签: jquery

我有这个代码

$(".Pager .page").live("click", function () {
    if ($('#txtBuscador').val() == '') {
        GetCustomers(parseInt($(this).attr('page')));
    } else {
        GetCustomersBuscar(parseInt($(this).attr('page')));
    }
});

我替换它

$(document).on("click", ".Pager.page", function () {
    if ($('#txtBuscador').val() == '' ) {
        GetCustomers(parseInt($(this).attr('page')));
    } else { 
        GetCustomersBuscar(parseInt($(this).attr('page')));
    }
});

我不明白为什么这不起作用,元素.Pager.Page是动态创建的。

<div class="Pager">
  <span>1</span>
  <a style="cursor:pointer" class="page" page="2">2</a>
  <a style="cursor:pointer" class="page" page="3">3</a>
</div>

2 个答案:

答案 0 :(得分:0)

您是否尝试过这样做:

$('.Pager').on('click', '.page', function() {
  if ($('#txtBuscador').val() == '' ) {
    GetCustomers(parseInt($(this).attr('page')));
  } else { 
    GetCustomersBuscar(parseInt($(this).attr('page')));
  }
});

答案 1 :(得分:0)

尝试用".Pager .page"代替".Pager.page"

&#13;
&#13;
function GetCustomers(page) {
  console.log("GetCustomers", page)
}

function GetCustomersBuscar(page) {
  console.log("GetCustomersBuscar", page)
}

$(document).on("click", ".Pager .page", function () {
    if ($("#txtBuscador").val() == "" ) {
        GetCustomers(parseInt($(this).attr("page")));
    } else { 
        GetCustomersBuscar(parseInt($(this).attr("page")));
    }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div class="Pager">
  <div class="page" page="123">click</div>
</div>
<input id="txtBuscador" type="text" value="" />
&#13;
&#13;
&#13;