Если вы сталкиваетесь с такой проблемой в представлении, вы можете использовать метод ниже, чтобы решить эту проблему. Здесь Iused пакет Newtonsoft.
@using Newtonsoft.Json
<script type="text/javascript">
var partData = @Html.Raw(JsonConvert.SerializeObject(ViewBag.Part));
</script>
При загрузке контента с использованием ajax скрипт должен связывать динамически добавляемый контент, чтобы вы могли использовать приведенный ниже скрипт, который может влиять на динамически загружаемые данные.
$(document).on('click', 'tr.breakrow', function(){
$(this).nextUntil('tr.breakrow').slideToggle(200);
});
При добавлении динамического содержимого или добавлении других элементов после загруженного окна или любых данных Ajax, в этом состоянии статический щелчок $(element).click(function(){})
не работает, Вы должны связать целевой элемент с документом, вот пример [ 116]:
$(document).on('click', 'your target element', function(){
//your code here......
});
_ - - - - - - _
Спасибо
_ - - - - - - _ [115 ]
Вам не нужно передавать второй аргумент при событии щелчка. Рабочий код описан ниже. Здесь я просто предупреждаю о щелчке, вы должны поместить свой пользовательский код вместо предупреждения.
$( document ).ready(function() {
$('#tableMain tr.breakrow').on('click',function(){
alert('toggle');
});
});
Нажмите Здесь для рабочего примера в jsfiddle.
ваша функция щелчка не работает, потому что jQuery работает на стороне клиента и php работает на стороне сервера , поэтому при выполнении скрипта он не найдет конкретный идентификатор, потому что таблица рендеринг через php.
Это делается делегированием событий. Событие будет привязано к элементу класса-оболочки, но будет делегировано элементу класса-селектора. Вот как это работает.
$('.wrapper-class').on("click", '.selector-class', function() {
// Your code here
});
Примечание: элемент класса-обертки может быть чем угодно. документ, тело или ваша обертка. Оболочка уже должна существовать.