首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >javascript onclick在jsfiddle中不起作用

javascript onclick在jsfiddle中不起作用
EN

Stack Overflow用户
提问于 2014-10-13 04:42:30
回答 5查看 10.9K关注 0票数 15

我正在尝试制作jsfiddle,我的onclick在jsfiddle中不起作用。我的代码出了什么问题?

代码语言:javascript
运行
复制
<input value="press" type="button" onclick="myclick()">


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

http://jsfiddle.net/hiteshbhilai2010/gs6rehnx/11/

编辑

我尝试了No wrap - In head,并再次尝试使用document.ready,它在jsfiddle中再次不起作用

代码语言:javascript
运行
复制
ERROR - Uncaught ReferenceError: myclick is not defined 

http://jsfiddle.net/hiteshbhilai2010/33wLs160/6/

我已经用已经存在的问题here进行了检查,但是当我在jsfiddle中尝试它时,我的问题发生了。

谁能帮帮我....thanks

EN

回答 5

Stack Overflow用户

发布于 2014-10-13 05:06:53

您需要选择No library (纯JS)和No wrap。然后,它将作为一个简单的HTML与javascript页面。

它将被插入到<head><script>元素中

代码语言:javascript
运行
复制
function myclick(){
  alert("myclick")
}

请参阅demo

票数 12
EN

Stack Overflow用户

发布于 2017-02-07 14:16:00

正如其他人所说,对于第一种情况,您必须将No wrap - in <head>No wrap - in <body>设置为javascript面板设置( js面板右上角的蓝色链接)。

对于第二个问题(您的编辑),您在函数中的代码和js将运行它(在新的上下文中),但它不会做任何事情,因为您只是定义了一个函数并忽略它,而没有任何调用或赋值。

如果你调用alert(myclick),你会看到所有的代码都被执行了,并且在那个时候被定义了。see this fiddle

代码语言:javascript
运行
复制
$(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;
})

如果你这样叫它:

代码语言:javascript
运行
复制
document.getElementsByTagName("input")[0].onclick = myclick;

$(document).ready({...})作用域中,它将被分配给按钮,并按您所希望方式工作。

票数 4
EN

Stack Overflow用户

发布于 2014-10-13 04:48:55

代码语言:javascript
运行
复制
<input value="press" id='a' type="button">
document.getElementById('a').onclick = function() { alert(1); }

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26329761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档