Переназначение значения переменной

49
5

Я чувствую, что мне, должно быть, не хватает чего-то действительно очевидного здесь. Я хватаю текст из div и использую оператор if для переназначения значения переменной в javascript, если это "HTML", но это, похоже, не работает вообще.

Может ли кто-нибудь помочь мне в этом?

var currentChoice = $('#contentSelector').text();      
var newChoice = currentChoice;
if (currentChoice == 'HTML') {
currentChoice = 'Javascript';
};
alert(currentChoice);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="contentSelector"> HTML </div>

благодаря

спросил(а) 2016-02-26T00:06:00+03:00 4 года назад
1
Решение
84

Есть пробелы вокруг "HTML", поэтому он, вероятно, не подходит. "HTML" отличается от "HTML".

Сделайте это, и он работает $.trim($('#contentSelector').text());

ответил(а) 2016-02-26T00:09:00+03:00 4 года назад
49

У вас есть пробелы с любой стороны текстового значения HTML элемента. Вы можете использовать trim() чтобы удалить их перед тестированием значения в выражении if:


var currentChoice = $('#contentSelector').text().trim();  

ответил(а) 2016-02-26T00:13:00+03:00 4 года назад
35

Если вы уже используете jquery, почему бы и нет:

var $currentChoice = $('#contentSelector')      
if ($currentChoice.text().toString() == "HTML"){
$currentChoice.text('Javascript');
};

ответил(а) 2016-02-26T00:10:00+03:00 4 года назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема