Я пытаюсь отправить текст в элемент управления webView из xamarin.forms. Есть множество решений, которые я почти все пробовал ... ;-)
Так что на самом деле они отлично работают, но мне всегда нужно нажимать кнопку в файле html, который я загружаю в этот webView , что я могу передать текст в файл html. Но я бы хотел передать текст, не нажимая на эту кнопку. Текст должен быть там, когда веб-просмотр загружен.
Вот код:
В xaml.cs я загружаю WebView:
protected override void OnAppearing()
{
base.OnAppearing();
webViewElement.Source = new HtmlWebViewSource();
webViewElement.Source = DependencyService.Get<IBaseUrl>().Get();
webViewElement.RegisterAction(ExecuteActionFromJavascript);
ExecuteSetFromJavascript();
}
затем с ExecuteSetFrom Javascript () я вызываю функцию, которая находится в файле html:
private async void ExecuteSetFromJavascript()
{
var result = "Hello";
if (result != null)
{
var test = await webViewElement.EvaluateJavaScriptAsync($"updatetextonwebview('{result}')");
}
}
это функция в файле html:
function updatetextonwebview(text) {
alert(text);
// document.getElementById("content").innerHTML = text;
}
Итак, теперь страница должна предупреждать "Hello", когда вызывается updatetextonwebview.
, но этого не происходит. Возможно, страница html не готова, когда я вызываю эту функцию!
Кто-нибудь знает, как я могу найти свое решение?
Заранее спасибо ...