Vous cherchez de l'aide avec mon code jQuery.jQuery focus de formulaire après la création d'un élément
Je crée une boîte modale, en utilisant la simplemodal plugin
je gère pour créer une zone modale sur le clic d'un élément, qui contient une forme .... Je voudrais la forme d'avoir l'accent sur le champ textarea quand il apparaît, mais je suis incertain de la façon d'y parvenir ..
Voici mon code actuel ..
$('#showModal a').live('click',(function(){
// Build Modal Box Container And Add to Page
$('<div id="osx-modal-content">\
<div id="osx-modal-title"><h2>Please explain this song.</h2></div>\
<div id="osx-modal-data"> \
<p class="loaderGif"> <img src="http://localhost:8500/mxRestore/images/ajax-loader.gif"> </p>\
</div>\
</div>').appendTo('body');
//Set Modal Box Options
$("#osx-modal-content").modal({
// OPTIONS SET HERE
overlayClose:true,
onOpen:OSX.open,
onClose:OSX.close
});
// I have a hidden form on the page...grab its HTML!!
var modalForm = $('#addTmWrapper').html();
// Dynamically build a text area and add to the form...
// The text area from my hidden form wont show properly for some reason.....maybe a coldfusion issue
var textField= ''
textField+= '<textarea name=' + '"sMessage"' + 'id="sMessages"' + 'cols="62"' + 'rows="3"' + 'class="textarea word_count">' + '</textarea>'
// Add hidden form to modal box, add textarea to form..
// Then show it
$('#osx-modal-data').html(modalForm).find('#addTmForm')
.prepend(textField)
.show();
return false
}));
Vous vous demandez comment je peux faire le textarea avoir le focus lorsque la boîte modale apparaît?
Toute aide serait appréciée, merci
oui, ont essayé avant, mais ne marche pas semblent fonctionner dans ce cas, pas pourquoi – namtax
Hm. Vous pouvez essayer .prepend ($ (textField)), plutôt que juste .prepend (textField) - cela fera que jQuery créera l'élément en premier, puis l'insérera. Cela pourrait aider. Vous pouvez également placer $ ('# sMessages'). Focus(); dans un bloc setTimeout d'une milliseconde ou deux. Le navigateur peut avoir besoin d'un moment avant de pouvoir trouver la nouvelle zone de texte. – kevingessner