javascript onclick not working in jsfiddle

前端 未结 5 1898
既然无缘
既然无缘 2020-12-17 15:34

I am trying to make jsfiddle , my onclick is not working in jsfiddle. what is wrong in my code



        
相关标签:
5条回答
  • 2020-12-17 15:50

    You need to select No library (pure JS) and No wrap - in head. Then it will work as a simple HTML with javascript page.

    This will be inserted in a <script> element in the <head>:

    function myclick(){
      alert("myclick")
    }
    

    See demo

    0 讨论(0)
  • 2020-12-17 15:51

    As others said, for first case you have to set No wrap - in <head> or No wrap - in <body> as javascript panel settings (the blue link at js panel top-right).

    For the second (your Edit) question, your code inside a function and the js will run it (within a new context), but it will do nothing as you just define a function and ignore it without any call or assignment.

    if you call alert(myclick) you will see all the code is executed and its defined at that point. see this fiddle

    $(document).ready(function() {
    
      //alert("ready is executed");
    
      function myclick(){
        alert("myclick is called")
        window.location.reload(true);
      }
    
      alert(myclick); //this will show the myclick is a defined function!
    
      //document.getElementsByTagName("input")[0].onclick = myclick;
    })
    

    if you call this:

    document.getElementsByTagName("input")[0].onclick = myclick;
    

    in that $(document).ready({...}) scope, it will be assigned to the button and works as you wish.

    0 讨论(0)
  • 2020-12-17 15:53

    Select "No wrap - bottom of " in "Load Type" of the scripting panel. This is the solution for Jsfiddle (till 17 december 2019).

    0 讨论(0)
  • 2020-12-17 16:04

    This one is working. Just remove it from document ready event. Also semicolons are optional in javascript but i advice to use them.

    function myclick() {
        alert("myclick");
        window.location.reload(true);
    }
    <input value="press" type="button" onclick="myclick();">
    <script>
        alert("home");
    </script>

    Here is the fiddle.

    0 讨论(0)
  • 2020-12-17 16:06
    <input value="press" id='a' type="button">
    document.getElementById('a').onclick = function() { alert(1); }
    

    http://jsfiddle.net/gs6rehnx/12/

    0 讨论(0)
提交回复
热议问题