我使用jQuery在母版页内调用页面getUserAdDetails.aspx?PID=
。
我必须动态生成按钮的ID ...下面的代码工作正常,但它不能单击而不是我必须双击按钮加载外部页面..我是新的jQuery所以我觉得很难找到解决方案。请检查我的代码,如果有人可以解决它,我们将不胜感激。
如果我也尝试在链接而不是按钮上发射相同的内容,那么它不起作用.. 请参阅下面的代码,这将为您提供一个想法
<script type="text/javascript">
function passPID(pid, psno) {
$(document).ready(function () {
$('#' + psno).html('<img src="images/ajax-loader-small.gif"/> Loading...');
$('#' + pid).click(function () {
$('#' + psno).load("getUserAdDetails.aspx?PID=" + pid);
});
});
}
</script>
<input id='<%# Eval("ProductIDGUID")%>' type="button" value="View Details" onclick="passPID('<%# Eval("ProductIDGUID")%>', '<%# Eval("psno")%>' )" class="btncss" />
答案 0 :(得分:2)
将脚本更改为:
function passPID(pid, psno) {
$('#' + psno)
.html('<img src="images/ajax-loader-small.gif"/> Loading...')
.load("getUserAdDetails.aspx?PID=" + pid);
}
它正在双击,因为当您第一次单击时,在您的函数内部,您将click
事件侦听器附加到该元素。然后,当您第二次单击时,此处理程序正在执行。
以下是包含$.slideUp
和$.slideDown
动画的解决方案:
function passPID(pid, psno) {
var $psno = $('#' + psno);
$psno.html('<img src="images/ajax-loader-small.gif"/> Loading...');
$.get('getUserAdDetails.aspx?PID=' + pid, {} , function(html){
$psno.slideUp(100, function(){
$psno
.html(html)
.slideDown();
})
}, 'html');
}