4
<a data-role="button" data-transition="flip" href="#feedbackmain" inline style="height:120px" type="button" name="feedbackLink">
        <img src="icons/report.png" inline style="height:80px"/><br/>Feedback
</a>

所以我有这个按钮,如上所示,我试图触发它为我打开一个饼图。问题是我似乎无法让按钮工作。如果可能的话,我也可以在网页加载时创建饼图,但我也无法弄清楚如何做到这一点。我的饼图是用 jQplot 制作的,生成如下:

function drawChart(data) {
     var data = data;

      var options = {
          title: 'Pie Chart',
          seriesDefaults: {
            renderer: jQuery.jqplot.PieRenderer,
            rendererOptions: {
              showDataLabels: true,
              dataLabels: 'value',
              fill: false,
              sliceMargin: 5,
              lineWidth: 5,
              startAngle: 45
            }
          },
          legend: { show:true, location: 'w' }
        };

      $.jqplot('chartDivId', data, options);
    }

现在,我尝试像这样调用函数:

$(document).ready(function()
    {
    drawChart([[["data1",6],["data2",5],["data3",2]]]);
})

我得到一个应该绘制图表的透明框,但是......它是透明的。我可以使用 data-role: page 在同一个 div 上创建一个带有 onClick 函数的按钮并让它工作,但我宁愿让它在启动时加载,因为我需要通过 PHP 从 MySQL 加载 data1、data2、data3 参数. 我什至无法使用以下代码与第一个片段中显示的按钮联系:

$("#feedbackLink").click(function()
        {
        alert("2");
        })
    });

有人知道怎么修这个东西吗?要么让按钮为我做这件事,要么让图表与脚本的其余部分一起自动加载。

编辑:我什至将其简化为:

$(document).ready(function()
    {
        $("#test").click(function()
        {
            alert("2");
        })
})

和按钮:

<div data-role="page" id="page1">
    <input type="button" id="test" value="test"/>
</div>

我基本上删除了整个页面中的所有其他内容,仍然没有该死的联系:U

4

2 回答 2

1

向锚链接添加一个id属性,然后尝试......它肯定会工作

在 jquery 中#类似于元素的 id

$("#feedbackLink").click(function()
        {
        alert("2");
        })
    });
于 2012-07-19T08:10:16.920 回答
1

您需要将 id 属性添加到锚点,以便您可以使用 JQuery 处理单击事件

<a data-role="button" data-transition="flip" id="feedbackLink" href="#feedbackmain" inline style="height:120px" type="button" name="feedbackLink">
    <img src="icons/report.png" inline style="height:80px"/><br/>Feedback
</a>

您还需要确保您的事件处理程序写入 $(document).ready()

$(document).ready(function(){
    $("#feedbackLink").click(function(){
      alert("2");
    })
});
于 2012-07-19T08:17:25.497 回答