Я использую jQuery для замены содержимого элемента строкой, которая содержит некоторые элементы.Ниже приведен код, который я использую для создания $ value, строки:
var value = '<span class="fn">' + $("#fn_").val() + '</span>';
$("input", this).val(value);
Тем не менее, то, что на самом деле выводится, имеет символы пробела по всему этому, например:
<span class="\"fn\"">Name</span>
Я предполагаю, что это, вероятно, глупая ошибка с моей стороны, но не уверен, что я делаю неправильно?Цените любой совет!
РЕДАКТИРОВАТЬ
Для ясности, вот полный код, я создаю пользовательский тип ввода для jEditable, который позволяет мне редактировать vcard.
$.editable.addInputType('person', {
element : function(settings, original) {
var fn = $('<input id="fn_"/>');
var bday = $('<input id="bday_" />');
var wday = $('<input id="wday_" />');
var dday = $('<input id="dday_" />');
var spouse = $('<input id="spouse_" />');
$(this).append(fn);
$(this).append(bday);
$(this).append(wday);
$(this).append(dday);
$(this).append(spouse);
/* Hidden input to store value which is submitted to server. */
var hidden = $('<input type="hidden">');
$(this).append(hidden);
return(hidden);
},
content : function(string, settings, original) {
var $data = $(string);
var data = {};
$data.each(function () {
var $t = $(this);
data[$t.attr('class')] = {
class: $t.attr('class'),
value: $t.text()};
});
alert(data.length);
$("#fn_", this).val('Name');
$("#bday_", this).val('Born');
$("#wday_", this).val('Married');
$("#dday_", this).val('Died');
$("#spouse_", this).val('Spouse');
},
submit: function (settings, original) {
var value = "<span class=fn>" + $("#fn_").val() + '</span>' + '<span class=spouse>' + $("#spouse_").val() + '</span>' + '<span class=bday>' + $("#bday_").val() + '</span>' + '<span class=wday>' + $("#wday_").val() + '</span>' +'<span class=dday>' + $("#dday_").val() + '</span>';
$("input", this).val(value);
}
});