я иметь эту функциюфункция Jquery одиночные кавычки игнорируются
function getTextfieldonly(fieldName, id) {
var option = jQuery('#'+fieldName+'_textfield').val();
if (option != "") {
$('.'+fieldName+'_ul').append('<li class="'+fieldName+'_item">'+option+'<span onclick="removeSelected($(this),'+fieldName+')" class="reLef buttonleistungspktr '+fieldName+'_button2"></span></li>');
$('#'+fieldName+'_list').prepend('<option selected="selected" value="'+option+'">'+option+'</option>');
}else {return false}
};
в строке-i присоединени Ли с пролетом внутри
.append('<li class="'+fieldName+'_item">'+option+'<span onclick="removeSelected($(this),'+fieldName+')" class="reLef buttonleistungspktr '+fieldName+'_button2"></span></li>');
если параметр FIELDNAME является, например, «Foo»
Я хочу OnClick в приложенном пролете выглядеть
onclick="removeSelected($(this),'foo')"
но подмигнули оказывается как
onclick="removeSelected($(this),foo)"
Так откуда же singlequotes идти? Мне нужно, чтобы они были там, и я не могу понять, как это сделать.
У кого-нибудь есть идея? спасибо заранее
Лучшей альтернативой было бы связать обработчик с JQuery вместо того, чтобы использовать встроенный событие обработчики. * где были сделаны одиночные кавычки *: никогда не было одиночных кавычек. В '[...], '+ fieldName +')" [...] ', одинарные кавычки обозначают строковые литералы, которые вы добавляете и добавляете к' fieldName'. –
Вам следует избегать написания встроенного javascript. Это ужасная безопасность Проблема настолько плоха, что методы начинают добавляться, чтобы заставить браузер отклонить его. http://www.w3.org/TR/CSP/ – fmsf
спасибо за ваши советы, другим способом решения этого было обновление div с элементами с ajax и бит кода контроллера, а внутри div - готовая функция с щелчком (function() {eventhandlinghere}) –