问题
i am creating a dynamic text box of input type with the help of following code i am not able to set the focus on the input type.
var elem = document.createElement("input");
elem.type = "text";
elem.id = "txtParent";
elem.setAttribute('onblur', 'SetSpanValueForParent("' + spnText.id + '")');
$(elem).focus();
$(spnText).append(elem);
i have also tried doing this elem.focus();
can u provide that one line statement how can i achieve this
回答1:
You first need to append the input, before setting the focus().
Elements can have focus only if they are visible.
Example:
function fx(spnText)
{
var elem = document.createElement("input");
elem.type = "text";
elem.id = "txtParent";
elem.setAttribute('onblur', 'SetSpanValueForParent("' + spnText.id + '")');
$(spnText).append(elem);
//a little delay before setting the focus
setTimeout(function(){elem.focus()},50);
}
来源:https://stackoverflow.com/questions/4312516/dynamic-textbox-jquery-focus