Я полагаю, что сегодня слишком долго смотрю на свой экран - здесь я не могу найти ошибку.У меня есть шаблон jQuery, и я использую foreach KnockoutJS на нем.Внутри у меня есть кнопка, и я пытаюсь вызвать функцию onclick и передать значение итерации.Вот фрагмент из шаблона.Единственное, что я могу считать неправильным, это что-то в синтаксисе моего шаблона jQuery, хотя он работает в другом месте <button onclick="newTabify(${$data})">Chat</button>
Мой шаблон выглядит следующим образом ... (кнопка внутри, вместе с кучей другихвещи)
<div data-bind='template: {name: "contactTemplate", foreach:contacts}' id="contactList"></div>
<script id='contactTemplate' type='text/html'>
...
</script>
Функция newTabify выглядит следующим образом:
function newTabify(contact) {
tabify($.inArray(contact, viewModel.contacts()));
}
Чрезвычайно странным здесь является ошибка.
SCRIPT1007: Expected ']'
default.html, line 1 character 19
Строка 1 - это мой <head>
тег !!
Если вам нужна дополнительная разметка, просто дайте мне знать.Спасибо!
РЕДАКТИРОВАТЬ: Вот мой шаблон контактов.Самое смешное, что в этом нет ничего плохого, кроме события нажатия на кнопку, когда я пытаюсь добавить строку, как показано выше.Но остальное в любом случае.
{{if $data.jid() != viewModel.jid() }}
<div class="wrapper" onclick="wrapperClick(this)">
<div style="padding-bottom:4px">
<img src=images/${$data.avail}.png> ${ $data.name } <img class="avatar" src=images/${$data.img}><br> <span class="status">${$data.status }</span>
</div>
<a href="mailto:${$data.jid}" >${$data.jid}</a> | <button onclick="newTabify(${$data})">Chat</button> | <button onclick="event.stopPropagation();">Call</button>
</div>
{{/if}}
РЕДАКТИРОВАТЬ 2: $ data объект контакта;я перебираю контакты (наблюдаемый массив контактных объектов) и успешно извлекаю все значения из контакта и т. д. Вот мой контакт:
function contact(name, status, avail, jid, img, convIndex){
return {
name : ko.observable(name),
status : ko.observable(status),
avail : ko.observable(avail),
img : ko.observable(img),
jid : ko.observable(jid),
convIndex: ko.observable(convIndex)
};
}
Так что технически $ dataдолжен быть инстинктом вышеизложенного.