0

私のhtmlヘッダーには

<head>
<script src="jquary.js"></script>
<script>
   $(document).ready(function(){
     ladda();
    });
</script>
</head>

そして、jQueryをロードします

そして体の中に私は

<form namne="load"
<fieldset>
    <legend> load</legend>
    <table>
        <tr>
            <td><div id="innehåll1">vill du ändra denna text</div></td>
        </tr>
    </table>
<button id="load_text">ändra</button>
</fieldset>

そして私のJavascriptで私は書いた

(function($){
   ladda = function() {

$("#load_text").click(function(){
    $("#innehåll1").load("innehåll.txt");
        alert('ändrat');
  });
  };
 })(jQuery);

同じフォルダにinnehåll.txtという名前の外部txtファイルがあります。

  <h2>fkdösfkds</h2>
  <p>jfksfksdalö</p> 

私の質問は、txtファイルのコンテンツがdivタグにロードされないのはなぜですか?

4

2 に答える 2

1

関数をグローバル関数として宣言していませんladda()-内部で宣言している匿名関数のスコープ内にあるため、他の$(document).ready()イベントハンドラーのスコープ外です。

ブラウザの開発者ツールを確認すると、上記のような JavaScript エラーが表示される可能性があります。これを行うことができます:

(function($) {
    $(document).ready(function() {
        $("#load_text").click(function() {
            $("#innehåll1").load("innehåll.txt");
            alert('ändrat');
        });
    });
})(jQuery);
于 2012-12-19T16:55:23.943 に答える
0

予期しない動作の原因となっている可能性のあることがいくつかあります。

  1. ファイル名に特殊文字を含めないようにしてください。
  2. ready関数でアクセスできるスコープでラダを宣言する必要があります
  3. formタグや他のすべてのjQuery のスペルミスを避ける必要があります。

これがお役に立てば幸いです!

正しいスコープで関数を定義するためのコード:

function ladda() {   
  $("#load_text").click(function(){
    $("#innehåll1").load("innehåll.txt");
    alert('ändrat');   
  }); 
}

準備ができている本体で直接行うこともできます。

$(document).ready(function() {
  $("#load_text").click(function() {
    $("#innehåll1").load("innehåll.txt");
    alert('ändrat');
  });
});
于 2012-12-19T17:04:12.360 に答える