2017-01-15 2 views
0

Я сталкиваюсь с ситуацией, когда мне нужно дважды использовать escape-цитату. В частности, мне нужно поместить переменную в функцию javascript с одинарными кавычками, но сама переменная также имеет одинарные кавычки. Подробности можно увидеть ниже, проблема линия является один с классом "tile_name":Escape Single Quote Дважды в Javascript

template = '' + 
    '<div name="'+$("#add_tags :selected").text()+'" class="tile" id="newsCat_gp" >' + 
     '<span onclick="this.parentNode.style.display = \'none\';" class="closebtn">&times;</span>' + 
     '<div class="tile__name"><b><font size="2px">'+$("#add_tags :selected").text()+'</b></font> <a id="newCat__'+$("#idx_newsCat").text()+'img" style="text-align: right; float: right;" href="javascript:toggle5(\'newCat__\'+$("#idx_newsCat").text()+\'\', \'img\', \'newCat__\'+$("#idx_newsCat").text()+\'img\');"><img src= "{% static '/img/minus.png' %}"></a> </div>' + 
     '<div class="tile__list" id="newCat__'+$("#idx_newsCat").text()+'" style="display: block;"></div>' + 
    '</div>'; 

Я хочу, чтобы результаты является

\'newCat__\'+$("#idx_newsCat").text()+\'\' 

становится

'newCat__'+$("#idx_newsCat").text()+' ' 

как то, что в tile_list класса и, наконец, дать результаты newCat__20,

где 20 он ld by $("#idx_newsCat").text().

У кого-нибудь есть идея? Большое спасибо.

ответ

1

Вы должны не избежать ", где вы Concat

снабжать струной, тетивой и т.п.
javascript:toggle5(\'newCat__'+$("#idx_newsCat").text()+'\', \'img\', \'newCat__'+$("#idx_newsCat").text()+'img\'); 
+1

браво, она прекрасно работает. большое спасибо! –

+0

Итак, кажется, что когда блок с кавычками убегает, системе все равно, что находится внутри блока, и мы можем написать синтаксис как нормальный, не так ли? –

+0

да, то, что вы сказали, верно;) –

0

может быть, это поможет

var template = '' + 
 
    '<div name="'+$("#add_tags :selected").text()+'" class="tile" id="newsCat_gp" >' + 
 
     '<span onclick="this.parentNode.style.display = \'none\';" class="closebtn">&times;</span>' + 
 
     '<div class="tile__name"><b><font size="2px">'+$("#add_tags :selected").text()+'</b></font> <a id="newCat__'+$("#idx_newsCat").text()+'img" style="text-align: right; float: right;" href="javascript:toggle5(\'newCat__\'+$("#idx_newsCat").text()+\'\', \'img\', \'newCat__\'+$("#idx_newsCat").text()+\'img\');"><img src= "{% static \'/img/minus.png\' %}"></a> </div>' + 
 
     '<div class="tile__list" id="newCat__'+$("#idx_newsCat").text()+'" style="display: block;"></div>' + 
 
    '</div>'; 
 

 
$('body').append(template);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

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