【问题标题】:Javascript populates input, but not span?Javascript填充输入,但不是跨度?
【发布时间】:2014-09-11 08:08:46
【问题描述】:

我正在使用 Select2 下拉菜单从数据库中获取数据,抛出 ajax 和 json/php。 然后我制作的选项将填充一些用于编辑数据库的输入文件。

我使用(此字段填充正常):

<input type="text" class="form-control" name="valt_element_id" id="valt_element_id" placeholder="Objekt ID" />

但在某些字段上,我只想显示数据,而不是进行编辑。 我想用:

<span id="valt_element_id"></span>

但是这个 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

【问题讨论】:

  • 请出示您的javascript。
  • 您似乎多次使用 id 这不是一个好主意。

标签: javascript php jquery html jquery-select2


【解决方案1】:

span 没有 value 属性。您应该使用texthtml

替换

$('#valt_element_id').val(ElementId);

$('#valt_element_id').text(ElementId);

【讨论】:

  • 谢谢。这工作得很好!我会更新我的属性知识。
【解决方案2】:

使用javascript:

document.getElementById("valt_element_id").innerHTML = ElementId;

或 jQuery:

$('#valt_element_id').html(ElementId);

【讨论】:

  • 谢谢。我在哪里可以了解 .val .text 和 .html 属性?
【解决方案3】:

你提到:

But on some field i just want to show the data, not to be edited 。为什么不在input 中使用readonly 属性而不是用span 替换它?

【讨论】:

  • 谢谢!我会试试这个,看看我最喜欢什么=)
猜你喜欢
  • 2022-08-18
  • 1970-01-01
  • 1970-01-01
  • 2012-12-11
  • 2019-07-23
  • 1970-01-01
  • 2017-06-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多