我正在尝试使用jQuery' post()
和get()
,但他们无法正常工作。
我没有HTML所以我这样加载jQuery:
var script = document.createElement('script');
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js';
document.head.appendChild(script);
似乎已成功加载。使用控制台中的window.jQuery
进行检查。
创建按钮后立即:
var btn = document.createElement("button");
btn.id = 'gogogo';
var txt = document.createTextNode("Go");
btn.appendChild(txt);
document.body.insertBefore(btn, document.body.childNodes[0]);
按钮已成功创建。
在此之后,我有了所需的post()
:
$("#gogogo").click(function () {
var txt = '123';
$.post("/users", {qwe: txt}, function(result){
alert(result);
});
});
但根本不会发生。单击按钮时,FireBug中的NET部分仍为空。
有人知道我做错了什么吗?
答案 0 :(得分:2)
使用jQuery的.on
事件,因为您正在动态创建元素,即event delegation.
对于前。
$(document).on("click","#gogogo",function () {
alert("Inside #gogogo event handler");
var txt = '123';
$.post("/users", {qwe: txt}, function(result){
alert(result);
});
});