Javascript:根据选择值更改文本
我在每个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
$(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");
}
});
});