Я использую функцию jQuery $ .load () для получения контента с сервера. загруженный контент содержит это:
<p id = "p1">123</p>
<script>
$(document).ready(function(){
$('#p1').html('ABC');
alert($('#p1').html());
});
</script>
изменение текста абзаца на «ABC» не влияет на страницу, но в alert () отображается «ABC».
Не могли бы вы немного уточнить свой вопрос?

Я думаю, что ваш селектор неверен. $ ('# p') выберет элементы (хотя в принципе должен быть только один, но отдельный) с идентификатором «p». Не все
элементы. Я думаю, вы имеете в виду либо $ ('p'), либо $ ('# p1').
Селектор «#p» ищет элемент DOM с идентификатором «p» - и здесь ничего подобного нет.
Правильный селектор - "# p1".
Также, чтобы установить текст в узле, используйте text (): (см. текст (val) в http://docs.jquery.com/Manipulation)
$("#p1").text('ABC');
Э, разве документ уже не будет «готов», когда контент будет загружен? Действительно ли срабатывает предупреждение? Если это так, я согласен с arnab_deka: используйте метод .text ().
если документ готов уже был и прошел, то любые функции, готовые к документу, проанализированные в будущем, будут немедленно выполнены
Если вы загружаете его через .load (), избавьтесь от окружающего $ (document) .ready (); немного. В этом нет необходимости, поскольку модель DOM уже загружена. Ваш сценарий должен работать так, как вы ожидаете.
Не забудьте добавить type = "text / javascript" в свой тег скрипта, чтобы убедиться, что он ничего не сломает.
Если у вас все еще есть проблемы, попробуйте просто использовать функцию обратного вызова .load (), например.
$("#somediv").load('some.html',{ /* empty data arg */ },function(){
$("#p1").html('ABC');
});
Ха-ха ... Я набрал те же две вещи, что и ответ, пока вы комментировали. Не хотел заниматься плагиатом, с радостью добавлю к вам репутацию, если вы действительно этого хотите :).