如何在mozilla中获取innerhtml值

时间:2009-10-22 13:21:08

标签: javascript jquery

我有以下HTML代码

<div id="divTest">
    Hello
    <input type="text" id="txtID" value="" />
    <input type="button" onclick="getForm();" value="Click" />
</div>

我有以下javascript函数来获取innerHtml值

 <script language="javascript" type="text/javascript">
    function getForm()
    {
        var obj = document.getElementById('divTest');
        alert(obj.innerHTML);
    }

    </script>

我正在尝试获取完整的innerHtml值。当用户在“txtId”中添加一些值时,当他点击按钮时,它应该显示所有带有 txtId 值的innerHtml。它在Internet Explorer中工作正常,但在Mozilla中失败。

请建议我在javascript函数中需要做哪些更改,或者我需要一些Jquery。

感谢。

最诚挚的问候,

2 个答案:

答案 0 :(得分:0)

我自己也遇到过这种情况 - 请尝试使用obj.innerHtml(注意大写)。

答案 1 :(得分:0)

我使用下面的jQuery解决了我的问题

 <script type="text/javascript">   



$(document).ready(function() 



 {

  var oldHTML = $.fn.html;



  $.fn.formhtml = function() {

    if (arguments.length) return oldHTML.apply(this,arguments);

    $("input,textarea,button", this).each(function() {

      this.setAttribute('value',this.value);

    });

    $(":radio,:checkbox", this).each(function() 

    {



      if (this.checked) this.setAttribute('checked', 'checked');

      else this.removeAttribute('checked');

    });

    $("option", this).each(function() 

    {      

      if (this.selected) this.setAttribute('selected', 'selected');

      else this.removeAttribute('selected');

    });

    return oldHTML.apply(this);

  }; 

  $.fn.html = $.fn.formhtml;

});

$(document).ready(function() 

{ 

    $('input[type=button]').click(function() {

        alert($('#divTest').html());

    });

});

    </script>

,html如下:

<div id="divTest">

    Hello

    <input type="text" id="txtID" />

    <input type="text" id="txtID" />

    <input type="text" />

    <input type="text" id="Text1" />

    <input type="text" id="Text1" />

    <input type="text" />

    <input type="text" />

    <input type="text" />

    <input type="text" id="Text5" />

    <input type="text" id="Text6" />

</div>

<input type="button" value="Click" />