Как изменить значение в html, загруженном с помощью jQuery?

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

При нажатии кнопки я загружаю дополнительный html на свой сайт, который я сохраняю в другом файле. После загрузки я хочу внести некоторые изменения в загруженный html. В настоящее время я пытаюсь сделать это следующим образом:

 $.when($("#divForInsert").load("/toInsert.html")).done(function(){
    $("#someInput").val("new text in it");
});
  

Содержимое файла выглядит следующим образом:

 <input type='text'
   size='5'
   id='someInput'
   name='someInput'>
  

Я уверен, что оно #someInput существует (проверил его в toInsert.html и с помощью элемента inspect в браузере), и поскольку я загружаю его с помощью .done(), я полагаю, что оно уже загружено, когда я пытаюсь изменить его значение. Так почему же оно отказывается изменяться?

Все советы приветствуются!

[РЕДАКТИРОВАТЬ] Я неправильно сказал, что это был div, который я пытался изменить, но на самом деле это было поле ввода. Я добавил это в вопрос.

Комментарии:

1. Попробуйте использовать $('#someDiv').html('content')

2. @doitmyway — Извините, но я по ошибке сказал, что это div, где на самом деле это было поле ввода, значение которого я пытаюсь изменить. Я изменил это в своем первоначальном вопросе. У вас есть какие-нибудь идеи сейчас?

Ответ №1:

Попробуйте это:

 $("#divForInsert").load("/toInsert.html", function() {
    $("#someInput").val("new text in it");
});
  

Комментарии:

1. Извините, но я по ошибке сказал, что это div, где на самом деле это было поле ввода. Я изменил это в своем первоначальном вопросе. У вас есть какие-нибудь идеи сейчас?

2. Потрясающе! Получилось! Миллион благодарностей!