基于其他TextField Jquery Mobile启用TextField

时间:2013-08-05 09:21:52

标签: javascript jquery html jquery-mobile

有两个文本字段(具有自动完成功能):

<label for="name">Customer:</label>
<input type="text" name="customer" id="customer" value=""  />
<input type="hidden" id="customer-id" />
<p id="customer-description"></p>


<label for="name">Store:</label>
<input type="text" name="store" id="store" value=""  disabled="true" />
<input type="hidden" id="store-id" />
<p id="store-description"></p>

如您所见,我最初禁用了第二个文本字段。我想要的是当用户从客户文本框中选择项目时,应该启用商店文本框。 这是我尝试但它不启用商店字段:

$(function() {
    $('#customer').autocomplete({
        source: "./SearchCustomer.php?term="+document.getElementById("customer").value,
        minLength: 0,
        focus: function( event, ui ) {
            $( "#customer" ).val( ui.item.label );
            return false;
        },
        select: function (event, ui) {
            $( "#customer" ).val( ui.item.label );
            $( "#customer-id" ).val( ui.item.value );
            return false;
        }
    })
    .data( "ui-autocomplete" )._renderItem = function( ul, item ) {
      return $( "<li>" ).append( "<a>" + item.label + "</a>" ).appendTo( ul );
    };
    $("#store").removeAttr("disabled").focus();
});

我们将不胜感激。

2 个答案:

答案 0 :(得分:1)

试试这个

$(function() {
    $('#customer').autocomplete({
        source: "./SearchCustomer.php?term="+document.getElementById("customer").value,
        minLength: 0,
        focus: function( event, ui ) {
            $( "#customer" ).val( ui.item.label );
            return false;
        },
        select: function (event, ui) {
            $( "#customer" ).val( ui.item.label );
            $( "#customer-id" ).val( ui.item.value );
            $("#store").removeAttr("disabled").focus();
            return false;
        }
    })
    .data( "ui-autocomplete" )._renderItem = function( ul, item ) {
      return $( "<li>" ).append( "<a>" + item.label + "</a>" ).appendTo( ul );
    };

});

答案 1 :(得分:1)

$('#store').prop('disabled', false).focus();添加到您的选择功能:

select: function(ev, ui) {
    $( "#customer" ).val( ui.item.label );
    $( "#customer-id" ).val( ui.item.value );
    $( "#store" ).prop( 'disabled', false ).focus();
    return false;
}

因此,当选择自动填充项目时,将#store的禁用属性设置为false,并为元素提供焦点。

Here's a fiddle