Google chrome jQuery-googlechrome赢得';无法获取更新的textarea值

Google chrome jQuery-googlechrome赢得';无法获取更新的textarea值,google-chrome,textarea,Google Chrome,Textarea,我有一个默认文本为“写评论…”的文本区。当用户更新文本区域并单击“添加评论”时,Google chrome不会获得新文本。这是我的密码 function add_comment( token, loader ){ $('textarea.n-c-i').focus(function(){ if( $(this).html() == 'write a comment...' ) { $(this).html(''); } }); $('textarea.n-c

我有一个默认文本为“写评论…”的文本区。当用户更新文本区域并单击“添加评论”时,Google chrome不会获得新文本。这是我的密码

function add_comment( token, loader ){
$('textarea.n-c-i').focus(function(){
    if( $(this).html() == 'write a comment...' ) {
        $(this).html('');   
    }
});
$('textarea.n-c-i').blur(function(){
    if( $(this).html() == '' ) {
        $(this).html('write a comment...'); 
    }                                 
});
$(".add-comment").bind("click", function() {
    try{
        var but = $(this);
        var parent = but.parents('.n-w');
        var ref = parent.attr("ref");
        var comment_box = parent.find('textarea');
        var comment = comment_box.val();
        alert(comment);
        var con_wrap = parent.find('ul.com-box');
        var contents = con_wrap .html();
        var outa_wrap = parent.find('.n-c-b');
        var outa = outa_wrap.html();
        var com_box = parent.find('ul.com-box');
        var results = parent.find('p.com-result');
        results.html(loader);
        comment_box.attr("disabled", "disabled");
        but.attr("disabled", "disabled");
        $.ajax({ 
            type: 'POST', url: './', data: 'add-comment=true&ref=' + encodeURIComponent(ref) + '&com=' + encodeURIComponent(comment) + '&token=' + token + '&aj=true', cache: false, timeout: 7000, 
            error: function(){ $.fancybox(internal_error, internal_error_fbs); results.html(''); comment_box.removeAttr("disabled"); but.removeAttr("disabled"); }, 
            success: function(html){ 
                auth(html);
                if( html != '<span class="error-msg">Error, message could not be posted at this time</span>' ) {
                    if( con_wrap.length == 0 ) {
                        outa_wrap.html('<ul class="com-box">' + html + '</ul>' + outa);
                        outa_wrap.find('li:last').fadeIn();
                        add_comment( token, loader );
                    }else{
                        com_box.html(contents + html);
                        com_box.find('li:last').fadeIn();
                    }
                }
                results.html('');
                comment_box.removeAttr("disabled");
                but.removeAttr("disabled");
            }                           
        });
    }catch(err){alert(err);}
    return false;
});
函数添加注释(令牌、加载器){
$('textarea.n-c-i').focus(函数(){
如果($(this.html()=='写评论…'){
$(this.html(“”);
}
});
$('textarea.n-c-i').blur(函数(){
如果($(this.html()=''){
$(this.html('write a comment…');
}                                 
});
$(“.add comment”).bind(“单击”,函数(){
试一试{
var但是=$(这个);
var parent=but.parents('.n-w');
var ref=父属性(“ref”);
var comment_box=parent.find('textarea');
var comment=comment_box.val();
警惕(评论);
var con_wrap=parent.find('ul.com框');
var contents=con_wrap.html();
var outa_wrap=parent.find('.n-c-b');
var outa=outa_wrap.html();
var com_box=parent.find('ul.com box');
var results=parent.find('p.com-result');
html(loader);
注释箱属性(“禁用”、“禁用”);
但是。attr(“残疾”、“残疾”);
$.ajax({
键入:“POST”,url:“./”,数据:“add comment=true&ref='+encodeURIComponent(ref)+'&com='+encodeURIComponent(comment)+'&token='+token+'&aj=true”,缓存:false,超时:7000,
错误:function(){$.fancybox(内部错误,内部错误);results.html(“”);comment\u box.removeAttr(“禁用”);but.removeAttr(“禁用”),
成功:函数(html){
auth(html);
如果(html!=“错误,此时无法发布消息”){
如果(con_wrap.length==0){
html('
    '+html+'
'+outa); outa_wrap.find('li:last').fadeIn(); 添加注释(令牌、加载器); }否则{ com_box.html(contents+html); com_box.find('li:last').fadeIn(); } } html(“”); 注释框。删除注释(“禁用”); 但是。删除TTR(“禁用”); } }); }捕捉(错误){提醒(错误);} 返回false; });
}


非常感谢您的帮助。

我认为您应该在文本区域中使用val()而不是html()

在旁注中,对于Chrome,请使用textarea上的占位符属性。你不需要太多这样的代码


每当您报告问题时,您应该a)写下您预期会发生的事情(您做了)和b)写下发生的事情。无论文本区域中有什么内容,警报()(第19行)都会返回“写注释…”,仅在chrome中。我还注意到在过去的经验中,chrome在使用
innerHTML
更新
时存在缺陷。使用
属性将其修复。将
称为二进制标记(带结尾的
)是一个用词不当的说法。它确实应该被视为一元标记(
)。它实际上不应该有
innerHTML
属性,因为它的innerHTML只接受文本,这与几乎任何其他标记的
innerHTML
不同。