如何在select选项中显示从数据库获取的值

时间:2015-10-05 05:47:40

标签: javascript jquery html ajax jquery-mobile

我想在select选项中显示值,该值是从数据库查询的。此值应该在其他函数中使用,而不是仅显示。

这是带有JQM的html脚本。

<div data-role="fieldcontain" class="ui-field-contain">
    <label>Priority : </label>
    <select name="priority" id="idPriority">
        <option value=""></option>
        <option value="High">High (3days)</option>
        <option value="Low">Low (5days)</option>
    </select>
</div>

这是jQuery脚本。

function functionSuccess(data){
    var eachrow = JSON.parse(data);
    $('#idPriority').val(eachrow[0].logPriority);    //This line is not work
}

PS.I使用Ajax和PHP从数据库中获取数据。而且我确信数据已经存在,因为我已经测试过在输入文本框中显示值并且没有问题。

PS。我不使用append()因为它不能用于定义值。它只能显示数据。

2 个答案:

答案 0 :(得分:0)

您只能将这些值设置为选项中的下拉列表,因此您只能设置""HighLow值。如果您尝试设置除这些E.g Test之外的任何其他值,那么它将无效。

&#13;
&#13;
var myResponse = [{"logPriority":"High"}];
$( document ).ready(function() {
    $('#idPriority').val(myResponse[0].logPriority);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-role="fieldcontain" class="ui-field-contain">
    <label>Priority : </label>
    <select name="priority" id="idPriority">
        <option value=""></option>
        <option value="High">High (3days)</option>
        <option value="Low">Low (5days)</option>
    </select>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

我通过使用localStorage和append()来解决这个问题。

对于HTML脚本,我添加了类来选择标记。

<div data-role="fieldcontain" class="ui-field-contain">
    <label>Priority : </label>
    <select name="priority" id="idPriority" class="classPriority">
        <option value=""></option>
        <option value="High">High (3days)</option>
        <option value="Low">Low (5days)</option>
    </select>
</div>

对于jQuery脚本

function functionSuccess(data){
    var eachrow = JSON.parse(data);
    $('.classPriority').append(eachrow[0].logPriority);    //show value
    localStorage.setItem("SelectPriority",eachrow[0].logPriority);    //Keep value
}

以及在另一个函数中获取值的示例。

function examplePullValue() {
    alert(localStorage.getItem("SelectPriority"));    //get value
    localStorage.removeItem("SelectPriority");    //remove value
}