通过javascript/jquery添加带onclick功能的按钮

Shu*_*uma 3 javascript jquery button

我正在努力找到通过附加功能的javascript/jquery添加按钮的正确语法.

现在我正在尝试:

list.append("<button onclick='getFeed('http://open.live.bbc.co.uk/weather/feeds/en/PA2/3dayforecast.rss, showFeedResults')'>ButtonTest</button>");
Run Code Online (Sandbox Code Playgroud)

但它返回:

<button onclick="getFeed(" http:="" open.live.bbc.co.uk="" weather="" feeds="" en="" pa2="" 3dayforecast.rss,="" showfeedresults')'="">ButtonTest</button>
Run Code Online (Sandbox Code Playgroud)

从本质上讲,我希望能够创造

<button onclick="getFeed('http://open.live.bbc.co.uk/weather/feeds/en/B1/3dayforecast.rss', showFeedResults)" class="ui-btn-hidden">
Run Code Online (Sandbox Code Playgroud)

在javascript中,但无法弄清楚如何......

而且我似乎无法绕过创建使用单个和双重qoutation标记的html元素.

任何建议将不胜感激.

Rok*_*jan 8

http://api.jquery.com/on/

list.append("<button>ButtonTest</button>");

list.on("click", "button", function(){
    getFeed('http://open.live.bbc.co.uk/weather/feeds/en/PA2/3dayforecast.rss, showFeedResults');
});
Run Code Online (Sandbox Code Playgroud)

对于动态生成的元素,请使用.on()上述方法.


mea*_*gar 5

虽然我认为on在整个列表上使用处理程序会更好,但是将事件绑定到断开连接的DOM元素之前,将事件添加到DOM也是完全可以接受的:

button = $("<button>Button Test</button>");

button.click(function () {
  getFeed('http://open.live.bbc.co.uk/weather/feeds/en/PA2/3dayforecast.rss, showFeedResults');
});

list.append(button);
Run Code Online (Sandbox Code Playgroud)