JQuery Textarea val - 创建动态



>我正在创建一个这样的文本区域:

var visit_detailSpan = $("<span class='visit'>Visits: (optional)</span>");             
var visit = $("<textarea rows='4' cols='40' class='visit' id='visit'></textarea>");

现在,我正在尝试获取上述文本区域的值:当用户单击提交按钮时:但我得到undefined

var submitVisit = function(){  
            $.getJSON(
                options.ServiceUrl,
                {                    
                   ......,
                   ......,
                   visit: $('#visit').val()   //<<<<<<
                },
               function (response) { ... }                      
             );
        }

如果访问 =

var visit = $("<textarea rows='4' cols='40' class='visit' id='visit'></textarea>")

或者即使它是

var visit = $("<textarea />").attr({ id: 'visit', rows: 4, cols: 40 }).addClass("visit")

无论哪种方式,您都已经将变量visit建立为 HTML Textarea 元素的 jQuery 对象,因此在召回时获取值就像

visit.val();

每当您将一个元素作为 jquery 对象分配给变量时,您都不需要调用该元素 id,如果您确实通过 id 调用它并未定义,那么您实际上还没有将动态 html 发布到 dom 或者 id 没有正确建立。

如果在建立变量后,快速查看console.log(visit)应该在控制台中显示如下内容:

[<textarea id=​"visit" rows=​"4" cols="40" class="visit" >​</textarea>​]

如您所见,visit是您的元素,因此,我再次重申,此时无需通过 id 调用该元素。

最新更新