Я пишу приложение (Asp.Net MVC), которое содержит много повторно используемых компонентов.
В настоящее время я загружаю эти компоненты с помощью вызовов Ajax, используя, разумеется, библиотеку jQuery.
Эти компоненты также будут вызывать другие подкомпоненты, и поэтому все эти JavaScript возвращаются.
Итак, вопрос в том, , где я должен поставить "обратный вызов" JavaScript?
У меня сейчас что-то вроде этого:
Страница:
<html>
<head>
<title>blah</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" ></script>
</head>
<body>
<div id="Container"></div>
<script type="text/javascript">
$(document).ready(function() {
$('#Container').load('SomeCrazyDomain.com/SomeComponent');
});
</script>
</body>
</html>
Компонент:
<p>Load sub components</p><input type="button" onclick="GetSubcompent" />
<div id="SubcompentContainer"></div>
<!-- Is this Bad? -->
<script type="text/javascript">
function GetSubcompent() {
$('#SubcompentContainer').load('SomeCrazyDomain.com/SomeSubComponent');
}
</script>
Подкомпонент:
<h1>I am a sub compent</h1>
<script type="text/javascript">
function ToBeLoadedForEachAjaxCall() {
//do something
}
</script>
Если я оставлю все как есть, каков эффект загрузки ToBeLoadedForEachAjaxCall () для каждого вызова ajax?Удастся ли посредникам уничтожить последний ToBeLoadedForEachAjaxCall () и заменить его более новым?
Спасибо,