如何使用JavaScript更改基于文本的onclick?

如何使用JavaScript更改基于文本的onclick?,javascript,html,Javascript,Html,大家晚上好 嗯,我现在正在学习JavaScript,根据点击的文本(按钮,…我想这没关系),我到达了我需要的地方 例如: 应编辑此消息 两种选择:ES-EN 如果单击/选择了选项“ES”,则: 此消息已编辑为ES 否则,如果单击/选择选项“EN”,则: 此消息已编辑为EN 我认为这可以通过脚本中的if实现,但问题是如何告诉脚本选择了哪个选项,如果是“ES”或“EN” 我有这个: <p id="demo">This message should be edited.<p>

大家晚上好

嗯,我现在正在学习JavaScript,根据点击的文本(按钮,…我想这没关系),我到达了我需要的地方

例如:

应编辑此消息

两种选择:ES-EN

如果单击/选择了选项“ES”,则:

此消息已编辑为ES

否则,如果单击/选择选项“EN”,则:

此消息已编辑为EN

我认为这可以通过脚本中的if实现,但问题是如何告诉脚本选择了哪个选项,如果是“ES”或“EN”

我有这个:

<p id="demo">This message should be edited.<p>
<a href="#" id="ES" onclick="func();">ES</a> - <a href="#" id="EN" onclick="func();">EN</a> - <a href="#" id="JP" onclick="func();">JP</a>

应编辑此消息。 - -

正如我所说,问题是我不知道如何告诉脚本单击/选择了什么


感谢您给我的任何帮助(如果可能的话,用解决方案或在解决方案上进行解释将是令人惊讶的,因为我想学习和理解,而不是解决这个问题而不能在将来解决相同或类似的问题)。

func()
中传递
这个
,这将允许您访问当前单击的元素

var text=“此消息应编辑为”;
函数func(ele){
log(ele.innerHTML);
document.getElementById('demo').innerText=text+ele.innerText+“;
}

应编辑此消息。


--
传递给您用于获取单击元素的函数

然后使用标签将其设置为
id

见例

函数func(ele){
var demo=document.getElementById('demo');
demo.innerHTML=“此消息应编辑为“+ele.id+”;
}

应编辑此消息。 --

var text='此消息已编辑为';
函数func(e){
document.getElementById('demo').innerHTML=text+e.id+';
}

应编辑此消息。


--
例如,您可以将参数传递给函数

function fun(lang){
    If(lang === "ES"){
        Do something 
    }else If(lang === "EN"){
        Do something 
    }
}
当你调用你的函数时,输入如下内容:

onClick=“fun('ES')”或onClick=“fun('EN'))


注意:您可以在函数fun(lang)中使用switch语句,而不是If语句。

另一种使用switch Case的方法

HTML:

<p id="demo">This message should be edited.<p>
<a href="#" id="ES" onclick="func(this.id);">ES</a> - <a href="#" id="EN" onclick="func(this.id);">EN</a> - <a href="#" id="JP" onclick="func(this);">JP</a>
var text = 'This message has been edited to ';

function func(value) {
  var selectValue="";

    switch (value) {
      case "EN":
          selectValue = "EN";
        break;

        case "ES":
            selectValue = "ES";
        break;

        case "JP":
            selectValue = "JP";
        break;
}

document.getElementById('demo').innerHTML = text + selectValue + '.';
}

注意:标记定义了一个超链接,用于从一个页面链接到另一个页面。

如果只是想更改一些部分,这可能会起作用,但是,如果在我的情况下(我没有指定,很抱歉!),我想将其用作多语言脚本。例如,将html的完整语言从EN更改为ES。无论如何,谢谢!这真的做到了,这正是我想要的。我希望传递一个参数,以便if可以进行正确的比较。问题是我如何传递一个参数,答案是“fun('ES')),这是我的错误,因为我没有把它放在那里。我真倒霉!非常感谢。这也可以奏效,但我认为按照乔瓦尼的解释做会更容易。无论如何谢谢你!谢谢,但吉奥瓦尼说的正是我想要的。无论如何,这是可行的!
var text = 'This message has been edited to ';

function func(value) {
  var selectValue="";

    switch (value) {
      case "EN":
          selectValue = "EN";
        break;

        case "ES":
            selectValue = "ES";
        break;

        case "JP":
            selectValue = "JP";
        break;
}

document.getElementById('demo').innerHTML = text + selectValue + '.';
}