2013-07-17 2 views
1

У меня есть веб-представление Cocoa, которое отображает локальный файл HTML. Я пытаюсь использовать jQuery.load() для загрузки другого локального файла HTML в div. Мой код JavaScript идет что-то вроде этого:jQuery .load не загружает локальный файл html внутри Cocoa WebView

$("#mydiv").load("test.html"); // test.html is a local file inside the app's bundle 

Я не вижу каких-либо исключений, но это не будет загружать HTML внутри DIV. Я использую точно такой же код для приложения iOS, и он отлично работает. Я также пробовал использовать XMLHttpRequest(), и я отлично вижу responseText.

Любые советы? Заранее спасибо!

+0

Вы можете попробовать поставить '$ (document) .ready' перед' .load() ', чтобы убедиться, что страница полностью там, прежде чем пытаться загрузить в нее что-то новое. В зависимости от времени загрузки у меня был сбой JS из-за того, что целевой div не был там, когда он пытается выполнить. – Peter

+0

На самом деле код выполняется после загрузки DOM. Я думаю, что это связано с WebView Cocoa, поскольку один и тот же код работает без проблем в iOS, Android и Windows. Спасибо за время. – Reinaldo

ответ

1

У меня возникла проблема с использованием jQuery.ajax. Вот как я это сделал:

jQuery.ajax({ 
    url: "test.html", dataType: "html" 
}).done(function(responseHtml) { 
    $("#mydiv").html(responseHtml); 
}); 

Надеюсь, это поможет кому-то!

+0

Не работает для меня, так же как и '.load' для объекта jQuery. – lucasvc

0
var $div = $('div#something'); 
$div.load("test.html"); 
+0

Я знаю, это звучит как простой ответ, но мне кажется, что моя проблема связана с WebViews Cocoa, а не с jQuery. Ваш код эквивалентен. В любом случае спасибо. – Reinaldo

1

миленькая работа вокруг просто заменить home.html с местным HTML-файла и содержания с сНу ид

document.getElementById("content").innerHTML='<object type="text/html" data="home.html" ></object>'; 

работает в Chrome, Firefox и IE наслаждайтесь!

Смежные вопросы