Я просмотрел другие вопросы «функция не определена», но, похоже, не может найти тот, который применим к моему прецеденту. Я использую angular.js.Функция неопределенной ошибки для функции, которая определена внутри регулятора углов.
У меня есть изначально пустой div, #mylist, который я динамически заполняю в js. У меня есть функция, определенная внутри контроллера, которую я назначаю для события onChange
.
Вот полный документ:
<!doctype html>
<html data-ng-app="testapp">
<head>
<script src="jquery-1.10.2.min.js"></script>
<script src="angular.min.js"></script>
<script>
var app = angular.module("testapp", []);
app.controller("MyAppController", function ($scope) {
createCheckbox();
function doSomething() {
alert("hello!");
}
function createCheckbox() {
$("#mylist").html("<input type='checkbox' onChange='javascript:doSomething();' />");
}
});
</script>
</head>
<body data-ng-controller="MyAppController">
<div id="mylist"></div>
</body>
</html>
При запуске, нажав на результаты CheckBox в функции не определены ошибки.
Что мне здесь не хватает? Благодарю.
Я думаю, что некоторые перефразирование «Вы делаете это неправильно» - это самая распространенная вещь, которую говорят вокруг угловых дискуссий (и это обычно так). Поэтому в основном вы не должны использовать jQuery для захвата элемента в DOM ... один секунда думаю, что я могу ответить довольно легко. – shaunhusain
На данный момент я использую угловые только для маршрутизации. Очевидно, что я не продвинутый js-разработчик, и я не мог определить, была ли ошибка с угловым или jq или простым js. Я думаю, что разумно просить о помощи в этот момент, чтобы привести меня в направлении. – Steven
@Steven Я не хотел быть унизительным/грубым, просто сказал, что я слышал, что что-то в этом роде произнесло совсем недавно, и фраза «угловой путь», которая делает это звуком как культ. Я тоже не эксперт JS, но пропущен прямо с AS3/Flex до AngularJS. jQuery всегда казался мне немного бесполезным (не то, что Angular - все леденцы на палочке, но он чувствует себя более организованным и гораздо менее подверженным ошибкам). В любом случае, надеюсь, что мой ответ имеет смысл, в основном я использую привязку для запуска функции, которая смотрит эту переменную, поэтому, когда она изменяется, я запускаю функцию. – shaunhusain