У меня была эта проблема, и оказалось, что один проект указывал на SQLExpress, но тот, у кого проблема, указывал на LocalDb. (в их соответствующем web.config). Глупый надзор, но стоит отметить здесь, в случае, если кто-либо другой устранит эту проблему.
Необходимо добавить что-то к отделениям, которое определяет, какое поведение они имеют, затем используйте jQuery, чтобы выбрать те отделения и добавить поведение. Одна опция состоит в том, чтобы использовать атрибут класса, хотя возможно это должно использоваться для презентации, а не поведения. Альтернатива была бы атрибутом рэла, но я обычно нахожу, что Вы также хотите указать другой CSS для каждого поведения, таким образом, класс, вероятно, в порядке в этом экземпляре.
Так, например, позволяет, предполагают, что Вы хотите четное и нечетное поведение:
<div class="odd">...</div>
<div class="even">...</div>
<div class="odd">...</div>
<div class="even">...</div>
Затем в jQuery:
$(document).load(function() {
$('.odd').click(function(el) {
// do stuff
});
$('.even').click(function(el) {
// dostuff
});
});
jQuery имеет очень мощный селекторный механизм, который может найти на основе любого основанного на CSS селектора и также поддерживать некоторый XPath и его собственные селекторы. Узнайте их! http://docs.jquery.com/Selectors
Я рекомендовал бы игнорировать стандарты W3C и выписать свойства HTML на элементах, которым нужны обработчики, присоединенные к ним:
Примечание: это не повредит рендеринг страницы!
<ul>
<li handler="doAlertOne"></li>
<li handler="doAlertTwo"></li>
<li handler="doAlertThree"></li>
</ul>
Объявите несколько функций:
function doAlertOne() { }
function doAlertTwo() { }
function doAlertThree() { }
И затем с помощью jQuery как так:
$("ul li").each(function ()
{
switch($(this).attr("handler"))
{
case "doAlertOne":
doAlertOne();
break;
case ... etc.
}
});
Будьте прагматически настроены.
Я не имею, действительно не знают о JQuery, но я действительно знаю, что инструментарий Dojo действительно делает очень незаметный JavaScript возможным.
Смотрите на пример здесь: http://dojocampus.org/explorer/#Dojo_Query_Adding%20Events
Демонстрация динамично добавляет события только к таблица HTML на основе классов.
Другим примером являются функции поведения, описал here:http://dojocampus.org/content/2008/03/26/cleaning-your-markup-with-dojobehavior/
Немного трудно сказать от Вашего вопроса, но возможно можно использовать различные селекторы jQuery для установки различных поведений щелчка? Например, скажите, что у Вас есть следующее:
<div class="section-1">
<div></div>
</div>
<div class="section-2">
<div></div>
</div>
Возможно, Вы могли сделать следующее в jQuery:
$('.section-1 div').onclick(...one set of functionality...);
$('.section-2 div').onclick(...another set of functionality...);
В основном решите на основе контекста что потребности произойти. Вы могли также выбрать все отделения и протестировать на некоторый родительский или дочерний элемент для определения, какую функциональность они получают.
Я должен был бы знать больше о специфических особенностях Вашей ситуации для предоставления более сфокусированного совета, но возможно это запустит Вас.
Я рекомендовал бы использовать эту вещь, названную "Делегация события". Это - то, как это работает.
Так, если Вы хотите обновить область, заявляет отделение, и Вы хотите обработать события незаметно, Вы присоединяете обработчик событий к самому отделению. Используйте любую платформу, Вы предпочитаете делать это. Вложение события может произойти в любое время, независимо от того, если Вы обновили отделение или нет.
Обработчик событий, присоединенный к этому отделению, получит объект-событие как один из, его - аргументы. Используя этот объект-событие, можно затем фигурировать, какой элемент инициировал событие. Вы могли обновить отделение любое количество раз: события, сгенерированные детьми отделения, будут пузыриться до отделения, где можно поймать и обработать их.
Это также оказывается огромной оптимизацией производительности, если Вы думаете о присоединении нескольких обработчиков ко многим элементам в отделении.