功能页面负载不起作用

时间:2011-07-06 16:05:29

标签: jquery postback partial pageload gritter

我一直在努力让我的jquery gritter通知在部分回发后工作,经过大量的谷歌搜索我发现很多建议推荐pageLoad功能。我不确定我是否已经正确实现了它,但现在根本没有显示gritter通知,即使在部分或完全回发之前也是如此。

你能看到我错在哪里吗? Javascript / jquery不是我的强项。

<script type="text/javascript">

    function pageLoad() {
        $(function () {
            $('.buy-notify').click(function () {
                var spn = this.attributes.getNamedItem('PartNumber').value;
                $.gritter.add({
                    title: 'Order notification..',
                    text: 'Adding ' + spn + ' to basket',
                    time: 1000
                });
                return true;
            });
        });
    };

</script>

提前致谢,

戴夫

3 个答案:

答案 0 :(得分:1)

$(function(){...});在页面加载时调用,您不需要将其包装在名为pageLoad的函数中。

如果在页面加载后添加了.buy-notify元素,则可能需要使用.live('click', function() ...而不是.click(function() ...绑定,因为.click仅绑定到jQuery可见的元素在初始页面加载。

答案 1 :(得分:0)

它们可能指的是在页面完全加载时运行的函数的jQuery快捷方式:

$(function() {
  $('.buy-notify').click(function () {
     var spn = this.attributes.getNamedItem('PartNumber').value;
      $.gritter.add({
      title: 'Order notification..',
      text: 'Adding ' + spn + ' to basket',
      time: 1000
    });
    return true;
  });
});

答案 2 :(得分:0)

他们没有必要这样做

  $(function () {
});

在一个函数中,您可以通过在HTML中的Body标签上使用onload事件来完成此操作,如

<body onload="javascript:pageLoad()">

否则检查jQuery中的pageload并绑定事件

$(function() {
  $('.buy-notify').click(function () {
     var spn = this.attributes.getNamedItem('PartNumber').value;
      $.gritter.add({
      title: 'Order notification..',
      text: 'Adding ' + spn + ' to basket',
      time: 1000
    });
    return true;
  });
});

第三种方式有点简单

<a href="javascript:void(0)" onclick="javascript:iamclick(0)"></a>

function iamclick(){
   var spn = this.attributes.getNamedItem('PartNumber').value;
          $.gritter.add({
          title: 'Order notification..',
          text: 'Adding ' + spn + ' to basket',
          time: 1000
        });
        return true;
      });
}
相关问题