我使用Select2下拉菜单从数据库中获取数据抛出ajax和json / php。 然后,我制作的选项将填充一些输入文件以编辑数据库。
我使用(此字段get填充好):
<input type="text" class="form-control" name="valt_element_id" id="valt_element_id" placeholder="Objekt ID" />
但在某些领域我只是想显示数据,而不是要编辑。 我打算用:
<span id="valt_element_id"></span>
但是这个跨度代码不起作用! 为什么呢?
JS:
$(document).ready(function(){
var valtObjektElement = $('#valj_objekt_element');
$('#valj_objekt_element').select2({
ajax: {
url: "valj_objekt_element.php",
dataType: 'json',
data: function (term, page) {
return {
q: term
};
},
results: function (data, page) {
return { results: data };
}
} // Ajax Call
}); // Select2
// Start Change
$(valtObjektElement).change(function() {
var ElementId = $(valtObjektElement).select2('data').id;
var ObjektNummer = $(valtObjektElement).select2('data').text;
$('#valt_element_id').val(ElementId);
$('#valt_objekt_nummer').val(ObjektNummer);
}); //Change
}); //Domument Ready
答案 0 :(得分:2)
value
没有span
属性。您应该使用text
或html
。
替换
$('#valt_element_id').val(ElementId);
与
$('#valt_element_id').text(ElementId);
答案 1 :(得分:1)
使用javascript:
document.getElementById("valt_element_id").innerHTML = ElementId;
或jQuery:
$('#valt_element_id').html(ElementId);
答案 2 :(得分:1)
你提到了:
But on some field i just want to show the data, not to be edited
。为什么不在readonly
中使用input
属性,而不是将其替换为span
?