2013-12-11 1 views
0
... 
results += "href=" + "JavaScript:" + "decrement(" + "'" + requestList[i].name + "'" +")>"; 
... 
document.getElementById("demo").innerHTML=results; 

Проблема в том, что в requestList [i] .name есть строка с более чем 1 словом, но с 1 словом она работает. И когда я проверяю элемент в chrome и firefox, он выглядит только так: Пример: requestList [i] .name = "John travolta";javascript не передает строки с более чем одним словом в HTML

<a href='JavaScript:decrement("John" travolta")> 

И когда я наведите мышь на элемент:

JavaScript:increment("John 

Любая идея?

+0

Вы не пишете кавычки в строке 'results'. Браузер пытается угадать их, но не справляется с пробелами. – Aioros

+0

Ваш примерный код несовместим. Вы показываете «JavaScript:« + »декремент («, но затем показываете выводимый вывод «JavaScript: increment» –

+0

Я не понимаю, что вы говорите. Я поставил предупреждение для печати requestList [i]. имя и печатает правильную строку – Elsendion

ответ

2

Попробуйте это:

results += "href=\"JavaScript:decrement('" + requestList[i].name + "')\">"; 

Ваш конкатенации сбивает с толку. Попробуйте упростить его. Выбери " с \", чтобы использовать внутри него ', поэтому ваш текст будет приятным, независимо от того, сколько у него пространства. В результате будет:

href="JavaScript:decrement('John Travolta')"> 

Итак, теперь вы должны добавить остальную часть своего тега. Просто совет: Попробуйте использовать a тег с пользовательской мышью, как это:

href="javascript:void(0)" onclick="decrement('')" 

Я надеюсь, что это помогает. Удачи.

+0

Это сработало, спасибо – Elsendion

+0

@Elsendion Nice ! Я рад помочь. Не забудьте отметить как принято. – DontVoteMeDown

-1

У вас есть синтаксические ошибки здесь <a href='JavaScript:increment("John" travolta")> '

удалить кавычки между 'Джон' и 'Траволта'

+0

Эта цитата автоматически вставлена ​​Инспектором, поскольку она пытается понять плохой HTML, данный ему в переменной 'results'. –

+0

Почему downvote? Что не так? –

+0

, как вы видите в примере первая цитата - одинарная кавычка, внутренности - двойные –

1

console.log(results) Если вы, вы увидите что-то вроде этого:

<a href=JavaScript:decrement('John Travolta')> 

ли это выглядеть как действительный HTML для вас? ;) Поместить кавычки вокруг значений атрибутов.

+0

Я согласен с вами –

Смежные вопросы