@@ -247,20 +247,22 @@ $.linkLive = function( settings, context ) {
247
247
// the contents, not the array itself
248
248
source = $ . isArray ( source ) ? [ source ] : source ;
249
249
target = $ . isArray ( target ) ? [ target ] : target ;
250
- convert = $ . convertFn [ convert ] || convert ;
251
-
252
- var handler = function ( ev ) {
253
- var source = ev . target ;
250
+
251
+ var handler = function ( ev , forceSource ) {
252
+ var source = ev ? ev . target : forceSource ;
254
253
var attr = sourceAttr ;
255
254
if ( ! attr ) {
256
255
// val for inputs, text for everything else
257
- var nodeName = source . nodeName ;
258
- attr = formElems . test ( nodeName ) ? "val" : "text" ;
256
+ if ( source . nodeType ) {
257
+ var nodeName = source . nodeName ;
258
+ attr = formElems . test ( nodeName ) ? "val" : "text" ;
259
+ }
259
260
}
260
261
var _source = $ ( source ) ,
261
- newValue = ev ? ev . newValue : getValue ( _source , attr ) ;
262
- if ( convert ) {
263
- newValue = convert ( newValue , settings ) ;
262
+ newValue = ev ? ev . newValue : getValue ( _source , attr ) ,
263
+ cv = convert ? ( $ . convertFn [ convert ] || convert ) : null ;
264
+ if ( cv ) {
265
+ newValue = cv ( newValue , settings ) ;
264
266
}
265
267
if ( typeof newValue !== "undefined" ) {
266
268
setValue ( _source , $ ( target , context ) , targetAttr , newValue ) ;
@@ -278,6 +280,13 @@ $.linkLive = function( settings, context ) {
278
280
context : context ,
279
281
handler : handler
280
282
} ) ;
283
+
284
+ if ( settings . update ) {
285
+ $ ( source ) . each ( function ( ) {
286
+ handler ( null , this ) ;
287
+ } ) ;
288
+
289
+ }
281
290
}
282
291
283
292
$ . unlinkLive = function ( settings , context ) {
0 commit comments