2010-12-14 3 views
0

私は、.load()メソッドを使用して読み込まれたフォームを持っています。ライン15上の読み込みページ.load()を含むフラグメントは、埋め込まれたJavaScriptを除きます。

$(function() { 
    $('#items,#button-search').hide(); 
    $("#companies").click(function() { 
     $(this).attr("value",""); 
     $('#address,#new-company-form').empty(); 
    }); 
    $("#companies").autocomplete({ 
     source: ";companies", 
     minLength: 2, 
     select: function(event, ui) { 
      if(ui.item.id == "create-new-company") { 
       // call the new company form 
       $('#address').empty(); 
       $('#new-company-form').load(';company_form #autoform'); 
      } 
      else 
      { 
       $('#new-company-form').empty(); 
       $.ajax({ 
        type: 'GET', 
        url: ';addresses?company=' + ui.item.id, 
        dataType: 'json', 
        // process the addresses 
        success: function(json) { 
         var opts = ''; 
         $.each(json, function(k, v) { 
          opts += '<option>' + v + '</option>'; 
         }); 
         $('#address').html('<select>' + opts + '</select>'); 
        } 
       }); //end ajax call to address 
      } 
     } // end select address 
    }); // end autocomplete 
}); // end function 

私は#autoformにしているのjavascript削除すると、私は

$('#new-company-form').load(';company_form #autoform'); 

を持っている。company_form HTMLは動作しますが、それ以外の場合はロードされていないですが。

これはどのように機能するのですか?

おかげ

+0

に拡張子を追加セミコロンとは何ですか? –

+0

それは私が使用するフレームワークの一部です。 http://hforge.org/itools – khinester

答えて

0

​​メソッドの最初のパラメータはURLです。ここに必要なURLはおそらくちょうどです。 URLに#autoformを渡して、何を達成したいですか?

#autoformがなくても機能する場合は、単に削除しないでください。

+0

テンプレートページ全体をロードしたくないので、私は#autoformが必要です – khinester

0

ええ、彼はページフラグメントだけをロードしたいと思っています。最初の引数は実際にはurlなので、 'company_form'が存在するページの名前を入れて、必要なフラグメントを追加してください。だから、それは...

$('#new-company-form').load('company_form.php #autoform'); 

を次のようになります私は唯一の変化があると思います「company_form」

+0

はい、わかります。私の問題は、#autoformフラグメント内にあるjavascriptが.load()によって呼び出されたときに動作しないということです。 – khinester

関連する問題