如何使用onclick运行Javascript函数

如何使用onclick运行Javascript函数,javascript,html,Javascript,Html,大宗报价 因此,这里我需要将打印功能链接到onclick,这样当我单击按钮时,它会在同一位置将消息打印到页面上。这是一个随机报价生成器代码,所以我想要的是,当我单击按钮时,它会将随机报价打印到页面上 当我加载页面时,所有内容都会按它应该的方式加载,但当我单击按钮时,什么都不会发生,只是单击,就这样 忽略引号文本它愚蠢愚蠢的东西长话短说,我永远不会在实际的网站上使用这些引号 对不起,如果我给了一个坏的描述,你可以看到我是新的编码 谢谢你的帮助 问题是当您从onclick属性调用函数时: var b

大宗报价

因此,这里我需要将打印功能链接到onclick,这样当我单击按钮时,它会在同一位置将消息打印到页面上。这是一个随机报价生成器代码,所以我想要的是,当我单击按钮时,它会将随机报价打印到页面上

当我加载页面时,所有内容都会按它应该的方式加载,但当我单击按钮时,什么都不会发生,只是单击,就这样

忽略引号文本它愚蠢愚蠢的东西长话短说,我永远不会在实际的网站上使用这些引号

对不起,如果我给了一个坏的描述,你可以看到我是新的编码


谢谢你的帮助

问题是当您从onclick属性调用函数时:

var blank = "";


function print(message) {
  var output = document.getElementById('output');
  output.innerHTML = message;
}

function getQuote(array) {
  var quotes =  '<h2 class="quote">' + 'quote: ' + array.quote + '</h2>';
      quotes +=  '<p class="source">' + 'Soure: ' + array.source + '</p>';
      quotes += '<p class="year">' + 'year: ' + array.year + '</p>';
      quotes += '<p class="citation">' + 'citation: ' + array.citation + '</p>';
      return quotes
};





> 

var quotes = [{
  quote: "Great man", source: "jack mike", year: 1990, citation: "movie"},
              { quote: "Good stuff", source:"Mac jones", year: 1989, citation: "book"},
              { quote: "i love you", source: "mom and dad", year: 1993, citation: "love"},
              {quote: "you're a hero", source: "hero man", year: 2020, citation: "future"},
              {quote: "you're a wizard", source: "hero wizard", year: 2022, citation: "future4"},
               {quote: "you're a man", source: "hero man33", year: 2025, citation: "future3"},
               {quote: "you're a good person", source: "hero person", year: 2021, citation: "future2"},
               {quote: "you're a web developer", source: "hero developer", year: 2026, citation: "futures"}
              ];

var i = Math.round(Math.random() * quotes.length - 1);
blank += getQuote(quotes[i]);
print(blank);

function timer(){
 setInterval(print(blank), 3000);

}
timer();
或者,您可以使用如下转义双引号:

<button onclick="print('blank')">Click me</button>

问题在于,当您在此处从onclick属性调用函数时:

var blank = "";


function print(message) {
  var output = document.getElementById('output');
  output.innerHTML = message;
}

function getQuote(array) {
  var quotes =  '<h2 class="quote">' + 'quote: ' + array.quote + '</h2>';
      quotes +=  '<p class="source">' + 'Soure: ' + array.source + '</p>';
      quotes += '<p class="year">' + 'year: ' + array.year + '</p>';
      quotes += '<p class="citation">' + 'citation: ' + array.citation + '</p>';
      return quotes
};





> 

var quotes = [{
  quote: "Great man", source: "jack mike", year: 1990, citation: "movie"},
              { quote: "Good stuff", source:"Mac jones", year: 1989, citation: "book"},
              { quote: "i love you", source: "mom and dad", year: 1993, citation: "love"},
              {quote: "you're a hero", source: "hero man", year: 2020, citation: "future"},
              {quote: "you're a wizard", source: "hero wizard", year: 2022, citation: "future4"},
               {quote: "you're a man", source: "hero man33", year: 2025, citation: "future3"},
               {quote: "you're a good person", source: "hero person", year: 2021, citation: "future2"},
               {quote: "you're a web developer", source: "hero developer", year: 2026, citation: "futures"}
              ];

var i = Math.round(Math.random() * quotes.length - 1);
blank += getQuote(quotes[i]);
print(blank);

function timer(){
 setInterval(print(blank), 3000);

}
timer();
或者,您可以使用如下转义双引号:

<button onclick="print('blank')">Click me</button>
javascript文件中的参数称为blank

我不知道你说的是什么意思。如果您试图传递一个变量,它必须在全局范围内

编辑:

好的,问题似乎是您希望printblank更改输出div中显示的引号,但print只更改div的innerHTML,它不会更改为blank,下面是您的代码,其中包含一个console.log in print,以显示调用了print

var blank=; 函数printmessage{ 控制台,记录“这里” var output=document.getElementById'output'; output.innerHTML=消息; } 函数getqoutarray{ var qoutes=+'qoute:'+array.qoute+; qoutes+='

'+'源:'+array.source+'

'; qoutes+='

'+'年:'+array.year+'

'; qoutes+='

'+'引文:'+array.引文+'

'; 返回库特斯 }; 变量qoutes=[{ 库特:伟人,来源:杰克·迈克,年份:1990,引文:电影}, {库特:好东西,来源:麦克·琼斯,年份:1989,引文:book}, {库特:我爱你,来源:爸爸妈妈,年份:1993,引文:爱}, {库特:你是英雄,来源:英雄,年份:2020,引文:未来}, {库特:你是一个巫师,来源:英雄巫师,年份:2022,引文:future4}, {库特:你是个男人,来源:英雄33,年份:2025,引文:未来3}, {库特:你是个好人,来源:英雄人物,年份:2021,引文:未来2}, {qoute:您是一名web开发人员,来源:hero developer,年份:2026,引文:futures} ]; var i=Math.roundMath.random*qoutes.length-1; blank+=getQouteqoutes[i]; 打印空白; 功能计时器{ setIntervalprintblank,3000; } 定时器; 库特斯 点击我 javascript文件中的参数称为blank

我不知道你说的是什么意思。如果您试图传递一个变量,它必须在全局范围内

编辑:

好的,问题似乎是您希望printblank更改输出div中显示的引号,但print只更改div的innerHTML,它不会更改为blank,下面是您的代码,其中包含一个console.log in print,以显示调用了print

var blank=; 函数printmessage{ 控制台,记录“这里” var output=document.getElementById'output'; output.innerHTML=消息; } 函数getqoutarray{ var qoutes=+'qoute:'+array.qoute+; qoutes+='

'+'源:'+array.source+'

'; qoutes+='

'+'年:'+array.year+'

'; qoutes+='

'+'引文:'+array.引文+'

'; 返回库特斯 }; 变量qoutes=[{ 库特:伟人,来源:杰克·迈克,年份:1990,引文:电影}, {库特:好东西,来源:麦克·琼斯,年份:1989,引文:book}, {库特:我爱你,来源:爸爸妈妈,年份:1993,引文:爱}, {库特:你是英雄,来源:英雄,年份:2020,引文:未来}, {库特:你是一个巫师,来源:英雄巫师,年份:2022,引文:future4}, {库特:你是个男人,来源:英雄33,年份:2025,引文:未来3}, {库特:你是个好人,来源:英雄人物,年份:2021,引文:未来2}, {qoute:您是一名web开发人员,来源:hero developer,年份:2026,引文:futures} ]; var i=Math.roundMath.random*qoutes.length-1; blank+=getQouteqoutes[i]; 打印空白; 功能计时器{ setIntervalprintblank,3000; } 定时器; 库特斯 单击我是否在student_report.js文件中定义了打印功能?如果没有,还必须在标记中定义函数。正如已经说过的,空白变量必须在全局范围内。

是在SudioRePur.js文件中定义的打印函数?如果没有,还必须在标记中定义函数。正如已经说过的,空白变量必须


在全局范围内。

替换下面的代码,而不是现有的按钮代码

<button onclick="print(\"blank\")">Click me</button>

当您将字符串发送到函数时,必须使用单/双引号,否则它将被认为是JS变量。

< P>替换下面的代码,而不是现有的按钮代码< /P>
<button onclick="print(\"blank\")">Click me</button>

当你将字符串发送到函数时,你必须使用单/双引号,否则它会被认为是JS变量。< /P>你也可以发布JavaScript吗?没有看到js很难诊断。我刚刚添加了它。你能发布javascript吗?没有看到js很难诊断。我刚刚添加了它。我这样做了,但它只在页面上打印了blank一词,我可以链接我的js文件,如果该帮助我这样做了,但它只在页面上打印了blank一词,我可以链接我的js文件,如果该帮助显示我会用脚本标记定义它吗?我刚才还添加了我的js脚本,帮助回答我的问题。我将如何用脚本标记定义它?我刚才还添加了我的JS脚本,以帮助回答我的问题。我刚才将我的JS脚本添加到问题中。噢,我的天啊,谢谢!下一节课我还不知道。但是你指出我的打印没有改变任何东西,它只是打印了相同的东西,因为打印中的值总是相同的,我需要添加到函数中,使其改变,谢谢!我刚才在问题中添加了我的JS脚本。哦,天哪,谢谢!我还不知道Const,我将在下一节课中学习。但是你指出我的打印没有改变任何东西,它只是打印了相同的东西,因为打印中的值总是相同的,我需要添加到函数中,使其改变,谢谢!