2011-01-29 18 views
2

<div id="element_id">hellow world</div>

var value = $('#element_id').html() 

を動作していないが常にではないが、時々"hello world"返します。 val()は常に動作しますが、html()ではありません。これはFirefoxでのみ発生します(Chromeでは常に動作します)。何か案は?

EDIT まだ問題はまだ分かりませんが、見つけたら結論を投稿します。回答ありがとう。

+0

何それは他の回を返さず、空の文字列? –

+0

ドキュメントに同じIDを持つ別の要素があるかどうかを確認します。それ以外の場合、常にhtmlを返す必要があります。 – booota

+0

ありません。奇妙なのは本当にそれが動作する時代のほとんどです。 – whamsicore

答えて

1

私はthis以前の質問がお役に立ちます。

P.S.いつか働いていて、いつか働いていないと言ったら、divのコンテンツにはいくつかの変更がありますか?

+0

いいえ、divの内容は変更されません。そのたびに保存されたクッキーからロードされます。 – whamsicore

+0

.html()関数自体ではなく、クッキーを扱う際に問題が発生する可能性があります。例えば、ユーザーがクッキーを無効にしたり、最近クッキーをクリーンアップしたりすることができます –

0

あなたはそれがあまりにも早くコンテンツを取得していた場合

function sayHello() { 
    var someContent = $('#element_id').html(); 
    alert(someContent); 
} 

setTimeout('sayHello()', 500); 

を見るタイムアウトにそれを包む試みることができますか?

0

これはjQuery 1.4.4を使用していました。私は他のバージョンでテストしていません。

$(document).ready(function(){ 
     function showhtml() { 
      var eid = $('div.eid').html(); 
      alert(eid); 
      $('code.status').html(eid); 
     } 
     showhtml(); 
    }); 

の.textはdiv要素内のテキストだけを返し、.htmlのは、HTMLタグで囲まれたテキストを返すことを思い出し。

0

あなたがしようとするための完全な改変されていないコード:

<!doctype html> 
<html lang="pt-br"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <style type="text/css"> 
      p {color:#4f4} 
      code {color:#999;font-family:monospace;font-size:14px} 
     </style> 
     <script type="text/javascript" src="libraries/jquery-1.4.4.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function(){ 
       function showhtml(n) { 
        //1 for html 0 for text 
        if(n == 1) { 
         var eid = $('div.eid').html(); 
         alert(eid); 
         $('code.status').html(eid); 
        } else if(n == 0 || n == null) { 
         var eid = $('div.eid').text(); 
         alert(eid); 
         $('code.status').text(eid); 
        } 
       } 
       showhtml(); 
      }); 
     </script> 
     <title>jQuery html() text()</title> 
    </head> 
    <body> 
     <div class="eid"> 
      <p>1 ajfdlk jaldkfjdksljfkldjlfkjal;fd</p> 
      <em>2 ajd;fjal;kdjf</em> 
     </div> 
     <br /> 
     <hr /> 
     <code class="status"></code> 
    </body> 
</html>