Javascript 函数不工作后,未给出错误

Javascript 函数不工作后,未给出错误,javascript,jquery,Javascript,Jquery,简而言之,我正在尝试生成一个输入,并在事实发生后创建一个标签。但是,除了创建预期的标签html之外,JSFIDLE中不显示任何标签,也不显示任何错误,尽管它在那里也不起作用,并且在执行代码时也不显示任何错误。甚至连chrome开发人员控制台中的任何东西都没有。下面是我尝试使用的代码片段 fieldset.append($('<input/>').attr({ type: 'radio', name: 'category', value: key, id: key}).click( f

简而言之,我正在尝试生成一个输入,并在事实发生后创建一个标签。但是,除了创建预期的标签html之外,JSFIDLE中不显示任何标签,也不显示任何错误,尽管它在那里也不起作用,并且在执行代码时也不显示任何错误。甚至连chrome开发人员控制台中的任何东西都没有。下面是我尝试使用的代码片段

fieldset.append($('<input/>').attr({ type: 'radio', name: 'category', value: key, id: key}).click( function() { highLightButton("selected", key);  hideShowText("show"); }).after("<label for='" + key + "'>AAA</label>"));
我装订错了吗?也许需要进行单独的追加调用?从我所看到的示例来看,它应该可以工作,但它似乎只是忽略了代码

请求的JSFIDLE URL

试试这个:

var $input = $('<input/>');

$input.attr({
    type: 'radio',
    name: 'category',
    value: 'abc',
    id: '123'
}).click(function (e) {
    console.log('click');
});

$('body').append($input);

$input.after("<label for='123'>AAA</label>");

jsiddle Demo:

@Jim是正确的,基本上在工作之后,您需要元素有一个父元素,在最后是添加新元素的地方。这就是为什么当您首先附加到DOM,然后调用after方法时,它会起作用

您可以发布您的JSFIDLE url吗?举例来说,如果字段集是一个空的jquery集合,则不会发生任何事情。@提供了cesarpachon URl,并且没有内容,因为我可以看到在字段集中创建的输入项的html,只是没有创建标签。这就是为什么在当前设置中它不起作用的原因。有道理。