无法在 jsp 中包含 js

not possible to include js in jsp

我写了一个简单的程序,用于将 js 包含在 jsp 中,但它不起作用,请帮助..

<body>
  <script src="self1.js"></script>
  <div id="selfie">
    <form name="selfform" id="selfform">
      <table>
        <tr>
          <td>Username
            <input type="text" name="txt" id="txt" />
          </td>
        </tr>
        <tr>
          <td>Password
            <input type="password" name="pas" id="pas" />
          </td>
        </tr>
        <tr>
          <td>
            <button type="button" name="log" id="log" 
                                    onclick="loginas()">Login</button>
          </td>/tr>
          <tr>
            <td>Not a Member? <a href="self2.jsp">Register Here</a>
            </td>
          </tr>
      </table>
    </form>
  </div>
</body>

在我的 JavaScript 中,我写道:(self1.js)

function loginas(){
    alert("hi............");
}

我也试过<script type="text/javascript" src="js/self1.js"></script>但是不行..请给我一个解决方案??

您需要在加载 js 后调用您的函数 (loginas)。

要检查它是否正常工作,请尝试仅在您的 js 文件中发出警报,例如,

//self1.js
alert("hi............");

更新您的问题后,我发现可能存在问题,即您的 DOM 元素首先加载,然后您的 Js 将不起作用,因为您的函数应该在使用它之前定义。所以,你可以使用 on() for binding event or use $.ready() 比如

// your js file code
$(function(){  // document ready shorthand
    function loginas(){
        alert("hi............");
    }
});

或使用on,如

// your js file code
$(function(){  // document ready shorthand
    $('#log').on('click',function(){
        alert("hi............");
    }
});

还有你HTML

<button type="button" name="log" id="log">Login</button>

第一步:检查您的页面是否有任何错误。您可以通过检查浏览器控制台选项卡 (Right Click->Inspect Element->Console Tab).

来发现您的错误

第二步:更正它,伙计.. :) 在你的情况下,它可能没有正确获取 js 路径。

<script type="text/javascript" src="../js/self1.js"></script>