繁体   English   中英

我正在尝试从动态生成的表单中获取Textarea值,但是当我单击按钮时,什么也没有发生

[英]I'm trying to get Textarea value from a dynamically generated form but when I click the button nothing happens

我有一个完全从jQuery生成的HTML文档,因此有一个表单。 当我单击按钮时,我试图获取在文本区域内输入的值,但它保持“未定义”状态。

我在jQuery中的HTML:

jQuery('<form/>', {
    id: 'username_form',
    "class": 'username_form'
    }).appendTo('#header');

    jQuery('<h2/>', {
    text: 'Please enter a Username',
    id: 'popuptitle',
    "class": 'username_title'
    }).appendTo('#username_form');

    jQuery('<textarea rows="1" col"50"/>', {
    id: 'username_text',
    "class": 'username_form'
    }).appendTo('#username_form');
    /*      btn submit   */ 
    var btn_submit= document.createElement('input');
    btn_submit.setAttribute('id','btn_Submit');
    btn_submit.setAttribute('type','button');
    btn_submit.setAttribute('name','btn_Submit');
    btn_submit.setAttribute('value','Submit');
    $(btn_submit).appendTo('#username_form');

我的功能:

    $('#btn_Submit').click(function() {
        //alert("Submitted");
        var username = $.trim($("#username_text").val());
        alert($("textarea#username_text").text());

        if(username != ""){
                // Show alert dialog if value is not blank
                alert(username);
            }
    });

我的警报中唯一发生的是空白或“未定义”

当创建动态元素时,jQuery在启动时不知道该元素,因此无法将事件附加到该元素。 您的按钮元素无法绑定事件。

您必须将事件绑定到现有的父元素,如下所示:

$(document).on("click",'#btn_Submit',function() {
...
});

当您尝试创建文本区域时,我认为这是与jQuery函数jQuery相关的问题。 它没有获得通知的ID 如果仅以这种方式使用:

jQuery('<textarea/>', {

有用。 (但您还需要使用.val()而不是.text()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM