【问题标题】:how call a javascript code in a specific blazor page如何在特定的 blazor 页面中调用 javascript 代码
【发布时间】:2022-07-13 12:44:51
【问题描述】:

我正在使用 blazor 转换网站, 我有一个页面,最后是这个 javascript

(function ($) {
    "use strict";
    $(document).ready(function () {
        $('#slider-range').slider({
          ..... more

如何在 blazor 中调用它? 我没有找到可行的解决方案

感谢

【问题讨论】:

  • 该代码中没有可调用的内容。
  • 这是一个即时函数,一旦定义就会自动调用。据我猜测,它的目的可能是初始化一个 jQuery silder 小部件。使用 Blazor,您应该从 OnAfterRender{Aysnc} 方法对初始化 JS 对象。您需要创建一个从 Blazor 调用的 JS 函数,并将初始化代码复制到该函数中:$(document).ready(function () { $('#slider-range').slider({ 你会说 JavaScript 吗?你肯定不会说 Blazor。在 Stackoverflow 中搜索有关在 Blazor 中使用 JS 的问题。我会找到很多答案
  • 我问,如果有人建议如何获得与以前相同的结果,我已经准备好尝试放入 myfile.js 并使用 jsRuntime.InvokeAsync 将其调用到 OnAfterRender{Aysnc} 中。

标签: javascript blazor


【解决方案1】:

是的,它可以工作,问题是 blazor 不理解 $ jquery 选择器,你需要在 .js 脚本中用 document 替换它才能工作。 例如, 将 $('#slider-range').slider({ 更改为 document.getElementById('#slider-range').slider({ 然后这条线将适用于存在 $ 的每个地方。只需将其从函数定义中删除,就像这样(function () {

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 2021-01-01
    • 2013-09-12
    • 1970-01-01
    • 2010-09-20
    相关资源
    最近更新 更多