将单值下拉列表替换为文本,并在jQuery中调用函数

将单值下拉列表替换为文本,并在jQuery中调用函数,jquery,Jquery,我用动态值填充一个下拉列表,当下拉列表发生变化时,我调用另一个函数。现在,如果下拉列表只有一个值,我想将其显示为静态文本,同时调用函数。有什么建议吗?如果我理解正确,您是在动态填充select并将函数绑定到其更改事件,如果值为“MyValue”,则运行特殊代码。您可以将此更改添加到函数中,例如: $('select.yourSelectClass).change(function(){ if $(this).val() == 'YourValue') { // Do whatever you h

我用动态值填充一个下拉列表,当下拉列表发生变化时,我调用另一个函数。现在,如果下拉列表只有一个值,我想将其显示为静态文本,同时调用函数。有什么建议吗?

如果我理解正确,您是在动态填充select并将函数绑定到其更改事件,如果值为“MyValue”,则运行特殊代码。您可以将此更改添加到函数中,例如:

$('select.yourSelectClass).change(function(){
if $(this).val() == 'YourValue')
{
// Do whatever you have to do when this value is selected
}
// General processing for the change event
});

如果您提供您的代码,我将能够提供一个更定制的答案,但以下是:

1: 获取dropdownlist的动态数据时,请使用基于计数的if/else

1.1:如果获取的值数为1(一),则 1.1.1:隐藏dropdownlist并在其位置插入文字 1.1.2:调用第二个函数

1.2:如果出现超过1(一)个值,则 1.2.1:使用值填充dropdownlist 1.2.2:将.change()函数绑定到dropdownlist

示例代码:

$(document).ready(function(){
    $.ajax(
        url: 'asdasd',
        type: POST,
        success: function(data){
            var p = [];
            $.each(data, function(key, val){
                p.push(key, val);
            });
            if(p.length > 1)
            {
                // bind values to dropdownlist and add handle for change event
            }
            else
            {
                $(".dropdownlist").html(p[0][1]);
                fetchSecondaryData();
            }
        }
    );

}))

请发布一些代码…thnx以获得您的答案,但我不关心即将出现的值,我关心的是选项值的数量。如果选项值的数量为1,那么我想将下拉列表更改为文本,同时调用函数。我不明白选项的数量。您能从选项值中获得它吗?我建议制作两个控件,如文本和下拉列表,然后根据所选选项隐藏和显示控件。