gpt4 book ai didi

javascript - 如何在 WebBrowser 控件中捕获 POST 的结果?

转载 作者:行者123 更新时间:2023-11-30 16:45:41 25 4
gpt4 key购买 nike

我有一个带有 WebBrowser control 的 Winforms 表单在上面。

我已经想出了如何通过将 C# 类的实例附加到 ObjectForScripting 来将 C# 代码连接到 Web 浏览器控件中的 Javascript。属性(property),像这样:

public partial class Browser : Form
{
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.ObjectForScripting = new ScriptInterface();
}
}

[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[ComVisible(true)]
public class ScriptInterface
{
public void DoSomething(string data)
{
// Do something interesting with data here
}
}

...然后像这样从 Javascript 中调用它:

<button onclick=window.external.DoSomething('with this')/>

我还没有弄清楚如何从 WebBrowser 控件中的表单捕获 POST 操作的结果,并在我的 C# 代码中使用它。

最佳答案

你或许可以使用 jQuery post而不是表单帖子。

假设您的表单的 ID 为 myForm:

$( "#myForm" ).submit(function( event ) {     
// Stop form from submitting normally
event.preventDefault();

// Get some values from elements on the page:
var $form = $(this),
var term = $form.find("input[name='s']").val(),
var url = $form.attr("action");

// Send the data using post
var posting = $.post( url, { s: term } )
.done(function(data) {
//Pass the response back to your code
window.external.DoSomething(data);
});
});

关于javascript - 如何在 WebBrowser 控件中捕获 POST 的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31281275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com