|
289 | 289 | function extractOptions(nodeName, context, options, element, scope) { |
290 | 290 | //extract all options from the element |
291 | 291 | var i, name, value, optionName, children = context.children, |
292 | | - attrs = context.attributes, eventName, eventAttrPrefix = "event-"; |
| 292 | + attrs = context.attributes, eventAttrPrefix = "event-"; |
293 | 293 |
|
294 | 294 | for (i = 0; i < attrs.length; i++) { |
295 | 295 | name = attrs[i].name; |
296 | 296 | value = attrs[i].value; |
297 | 297 |
|
298 | 298 | if (name.startsWith(eventAttrPrefix)) { |
299 | | - name = name.substr(eventAttrPrefix.length).replace(/-/g, "").toLowerCase(); |
300 | | - |
301 | | - if (name.startsWith(nodeName.toLowerCase())) { |
302 | | - eventName = name; |
303 | | - } else { |
304 | | - |
305 | | - // for grid features we also need to prefix the feature name to the event name |
306 | | - // for instance: iggridselectionrowselectionchanged |
307 | | - var featureName = ""; |
308 | | - |
309 | | - if (attrs.name) { |
310 | | - featureName = attrs.name.nodeValue.toLowerCase(); |
311 | | - } |
312 | | - |
313 | | - eventName = nodeName.toLowerCase() + featureName + name; |
314 | | - } |
315 | | - |
316 | | - element.on(eventName, scope.$eval(value)); |
317 | | - } else { |
318 | | - name = convertToCamelCase(name); |
| 299 | + name = name.substr(eventAttrPrefix.length); |
| 300 | + value = scope.$eval(value) || value; |
| 301 | + } |
| 302 | + name = convertToCamelCase(name); |
319 | 303 |
|
320 | | - /* if somewhere in the controls there is floting point number use this one /^-?\d+\.?\d*$/ */ |
321 | | - if (value === "true" || value === "false" || /^-?\d+\.?\d*$/.test(value) || /^{{[^}]+}}$/.test(value)) { |
322 | | - value = scope.$eval(value.replace(/([{}:])\1/g, "")); |
323 | | - } |
324 | | - options[name] = value; |
| 304 | + /* if somewhere in the controls there is floting point number use this one /^-?\d+\.?\d*$/ */ |
| 305 | + if (value === "true" || value === "false" || /^-?\d+\.?\d*$/.test(value) || /^{{[^}]+}}$/.test(value)) { |
| 306 | + value = scope.$eval(value.replace(/([{}:])\1/g, "")); |
325 | 307 | } |
| 308 | + options[name] = value; |
326 | 309 | } |
327 | 310 | //extract options from the nested elements |
328 | 311 | for (i = 0; i < children.length; i++) { |
|
0 commit comments