【问题标题】:Creating two HTML elements and nesting one in the other with jQuery使用 jQuery 创建两个 HTML 元素并将一个嵌套在另一个元素中
【发布时间】:2012-04-15 16:21:46
【问题描述】:

我正在尝试编写一个脚本,通过简单地将选项传递给不同的函数来生成 Twitter Bootstrap 样式的元素。在本例中,我正在生成一个提交按钮。

jQuery 似乎允许渲染一个元素,但像这样嵌套它们却失败了。

这种方法有什么替代品吗?

function renderButton(buttonText, buttonType, buttonName){
    if(buttonType == 'submit'){
        var $button = $('<input/>', {
            'type'  : 'submit',
            'name'  : buttonName,
            'value' : buttonText,
            'class' : 'btn submit'
        });
    }
    var $form_actions = $('<div/>', {
        'class' : 'form-actions',
        'text'  : $button
    });

    return $form_actions;   
};

renderButton('Go!', 'submit', 'buttonGo').insertAfter('#a');

【问题讨论】:

    标签: jquery html twitter-bootstrap


    【解决方案1】:

    到你在这里的时候:

    var $form_actions = $('<div/>', {
        'class' : 'form-actions',
        'text'  : $button
    });
    
    return $form_actions;  
    

    $button 包含一个 jQuery 元素(不仅仅是一堆 HTML)。直接将其分配为text 是行不通的,但您可以像这样附加它:

    var $form_actions = $('<div/>', {
        'class' : 'form-actions'
    });
    
    $form_actions.append($button);
    
    return $form_actions;  
    

    【讨论】:

    • 很好,它有效。这个解决方案更加优雅,因为我可以继续链接 .append($innerElement)。非常感谢
    猜你喜欢
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 2014-12-26
    • 1970-01-01
    • 2014-03-09
    • 1970-01-01
    • 2012-07-19
    相关资源
    最近更新 更多