我正在尝试创建一个Office-JS项目,它将获取一些表单数据,我在Excel任务窗体表单中创建了这些数据。然后,当他们提交时,它会向我的网站发送一个请求,该请求将处理该表单并将一些HTML / JS作为字符串反映为Bokeh或ggplot。
因此我的问题是:有没有办法创建一个“嵌入式”iframe
或Microsoft web browser
我可以将html/js
放入context.sync()
并发送“左侧”function getData(){
return Excel.run( function (context) {
return context.sync().then( function () {
.ajax({
<my url and form data>
}).done( function(data, status, xhr) {
var browser = create_browser(); // I do not know what this would be
// Bokeh route returns data["script"] & data["div"]
// (\n<script type="text/javascript">\n ... <div class="bk-plotdiv" id="30d5b5cf-da07-4382-9b93-09ac605ba96d"></div>\n</div>)
browser.render(data["script"], data["div"])
sheet.getRange().values = browser
})
})
})
使用Excel JS API?
我找到了有关使用内置图表的文档,但我希望能够传回更复杂的图表:https://docs.microsoft.com/en-us/office/dev/add-ins/excel/excel-add-ins-charts
要把它放入代码中,这就是我被困住的地方:
<select class="form-control" id="uni_name" name="uni_name" runat="server">
</select>
答案 0 :(得分:1)
我认为您可能想要的是内容加载项。这是一个例子:Excel Content Add-in Humongous-Insurance。有关Create new objects in Office documents的更多信息。但是,您不能在任务窗格中同时使用浏览器,也不能在Excel文档中同时使用浏览器。这些是不同的加载项类型,加载项清单指定类型。您需要在内容窗口中显示表单和结果图形。