Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从路径加载的javascript;如何使用document.getelementbyid_Javascript_Html_Asp.net_Frontend - Fatal编程技术网

从路径加载的javascript;如何使用document.getelementbyid

从路径加载的javascript;如何使用document.getelementbyid,javascript,html,asp.net,frontend,Javascript,Html,Asp.net,Frontend,` 函数init(){ var a='我的处理输出'; 警报(“我在这里”);//警报弹出 document.getElementById(“”).value=a; } 此答案假设您的目录结构正确 将脚本标记移动到正文底部,就在前面。这是一个很好的答案,也是另一个问题 此外,一般来说,从HTML元素内部调用JavaScript函数是不好的做法。如果您没有使用jQuery,那么可以添加一个“DOMContentLoaded”事件侦听器来运行代码。使用jQuery,标准的$(document).r

`

函数init(){
var a='我的处理输出';
警报(“我在这里”);//警报弹出
document.getElementById(“”).value=a;
}

此答案假设您的目录结构正确

将脚本标记移动到正文底部,就在前面。这是一个很好的答案,也是另一个问题

此外,一般来说,从HTML元素内部调用JavaScript函数是不好的做法。如果您没有使用jQuery,那么可以添加一个“DOMContentLoaded”事件侦听器来运行代码。使用jQuery,标准的$(document).ready()已被证明运行良好。或者,如果您只需将脚本标记放在;在JS文件的末尾,它将正常运行。这适用于非常简单的应用程序,但简单性有时是最好的

最后,为了进行健全性检查,可以在init函数中硬编码ID。我不知道asp.net,但您可能需要检查的输出。你确定你的身份证是正确的吗


祝你好运

您正在JS中使用ASP.Net内联调用。这不可行,原因有二:

  • 您可能没有将服务器配置为使用ASP.Net处理器处理.js文件
  • 即使您这样做了,对.js的处理也将与hosting.aspx页面完全分离;这意味着hdnField将不在范围内
  • 您最好将页面上项目的相关知识直接传递给JavaScript:

    JS:

    ASPX:

    
    

    希望这能有所帮助。

    你能发布你的HTML和JS代码吗?我刚刚以最简单的形式发布了。
    function init(config) {
        var a = 'output of my processing';
        alert('I am here'); // alert pops up
        document.getElementById(config.hdnFieldID).value = a;
    }
    
    <head>
        <script src="../Scripts/myscripts.js"></script>
    </head>
    
    <body onload="init({ hdnFieldID: '<%= hdnField.ClientID %>' })">
        <asp:HiddenField ID="hdnField" runat="server" />
    </body>