Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:根据选择值更改文本_Javascript_Jquery_Html - Fatal编程技术网

Javascript:根据选择值更改文本

Javascript:根据选择值更改文本,javascript,jquery,html,Javascript,Jquery,Html,我在每个javascript中添加了一个元素,其中包含一个文本。使用此代码: $(document).ready(function () { if ($('welcome_page').length) { $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr&g

我在每个javascript中添加了一个元素,其中包含一个文本。使用此代码:

$(document).ready(function () {
   if ($('welcome_page').length) {
   $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr>');
   }
});
也许

$(document).ready(function () {
   if ($('welcome_page').length) {
   $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr>');

   langChoice($("#languages"))

   }
});

我假设页面中存在下拉菜单语言;我不理解$welcome\u页面。。也许$welcome_page或者您使用了一个标记???

好的,然后做一件事,在提交函数的第一行内调用函数langChoicesel

例如:-

我想

访问此

HTML:


如果我理解正确:

<div id="welcome_page">
    <select id="languages" onchange="submit();">
        <option value="1" selected="">English</option>
        <option value="2">Spanish</option>
        <option value="3">French</option>
    </select>
    <div id="my_element"></div>
</div>

$(document).ready(function () {

    if ($('#welcome_page').length) {
       $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr>');
    }

$("#languages").on("change",function(){
    var Val = $(this).val();

    if(Val==1){
        $("#welcome_message").html("English");
    }
    else if(Val==2){
        $("#welcome_message").html("Spanish");
    }
    else if(Val==3){
        $("#welcome_message").html("French");
    }

});


});

Fiddle:

在哪里调用函数?能否添加一个plunker并复制问题?几乎是对的。但是新文本应该直接显示,如果是英语,它应该从一开始就显示英语,而不是原始文本您将初始文本设置为英语-将其称为您的起始语言,然后用户将其更改为任何他想要的语言,就像上面所说的一样,如果您想在更改页面时记住用户选择,我曾经用ajax为PHP中的每种语言设置了一个会话,当您更改select值时,它会记住它。您能更新代码以便它直接显示更改的文本吗?有时页面将以法语打开,因此初始文本根本不应该出现。让我确保我理解您想要实现的目标:用户进入您的网站,最初使用英语,比如说,然后他选择法语,这将使整个网站的所有页面语言都改为法语,对吗?不太正确。页面将以浏览器语言打开,或者语言由URL参数设置。因此,如果您的浏览器是法语的,则页面将以语言下拉菜单中已选择的Frech值打开,但我无法修改HTML。这就是我使用Javascript的原因
$(document).ready(function () {
   if ($('welcome_page').length) {
   $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr>');

   langChoice($("#languages"))

   }
});
function submit() {
  langChoice($("#languages"));

  .. your logic ..
}
<div id="greet"></div>
<select id="languages">
    <option value="en" >English</option>
    <option value="es" selected>Spanish</option>
    <option value="fr">French</option>
</select>
var welcome = {
    en:"English",
    es:"Espanol",
    fr:"Francais"
}
$(document).ready(function () {
    $('#greet').html(welcome[$('#languages').val()]);
});

$('#languages').change(function () {
    $('#greet').html(welcome[$('#languages').val()]);
});
<div id="welcome_page">
    <select id="languages" onchange="submit();">
        <option value="1" selected="">English</option>
        <option value="2">Spanish</option>
        <option value="3">French</option>
    </select>
    <div id="my_element"></div>
</div>

$(document).ready(function () {

    if ($('#welcome_page').length) {
       $('#my_element').after('<tr><td><td><td id="welcome_message">Welcome to my page</td></td></td</tr>');
    }

$("#languages").on("change",function(){
    var Val = $(this).val();

    if(Val==1){
        $("#welcome_message").html("English");
    }
    else if(Val==2){
        $("#welcome_message").html("Spanish");
    }
    else if(Val==3){
        $("#welcome_message").html("French");
    }

});


});