Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有谁知道jquery插件,它可以创建一个带有文本输入的select,该文本输入显示用于某些选项?_Javascript_Jquery_User Interface - Fatal编程技术网

Javascript 有谁知道jquery插件,它可以创建一个带有文本输入的select,该文本输入显示用于某些选项?

Javascript 有谁知道jquery插件,它可以创建一个带有文本输入的select,该文本输入显示用于某些选项?,javascript,jquery,user-interface,Javascript,Jquery,User Interface,例如,常规选择,但当我选择“自定义”时,会出现一个文本输入,我可以使用该输入,如下图所示: [Choice A ^] 变成 [Custom ^] ____________ [Choice A ] [Choice B ] [Choice C ] 我可以建立它,但这是一个常见的模式 注意:我不是说组合框。这里更棘手的部分是,您可能希望输入和选择框都使用相同的名称,因此无论处理表单数据的是什么,都不必怀疑选择了什么,而只需从相同的名称中读取值即可 我的看法是: var i; v

例如,常规选择,但当我选择“自定义”时,会出现一个文本输入,我可以使用该输入,如下图所示:

 [Choice A ^]
变成

 [Custom   ^] ____________
 [Choice A  ]
 [Choice B  ]
 [Choice C  ]
我可以建立它,但这是一个常见的模式


注意:我不是说组合框。

这里更棘手的部分是,您可能希望
输入
选择
框都使用相同的名称,因此无论处理表单数据的是什么,都不必怀疑选择了什么,而只需从相同的名称中读取值即可

我的看法是:

var i;
var b = false;
$("select").change(function(){
    if($("option:selected",this).hasClass('custom')){
     i = $('<input />').attr('name','values').insertAfter(this);   
         }else{
          $(i).remove();   
         }
});

$('form').submit(function(e){
    if (!b){
   e.preventDefault();
    if ($(i).length>0){
     $('select').remove();  
    } else{
     $(i).remove();   
    }
     b = true;
    $(this).trigger('submit');
}

});
vari;
var b=假;
$(“选择”).change(函数(){
if($(“选项:选中”,this).hasClass('custom')){
i=$('').attr('name','values').insertAfter(this);
}否则{
$(i).删除();
}
});
$('form')。提交(函数(e){
如果(!b){
e、 预防默认值();
如果($(i).长度>0){
$('select').remove();
}否则{
$(i).删除();
}
b=正确;
$(this.trigger('submit');
}
});

示例:(查看表单提交数据,对字段使用相同的名称,并且没有重复的条目,即组合框和输入框)。

这里更棘手的部分是,您可能希望
输入
选择
框都使用相同的名称,因此无论处理表单数据的是什么,不必怀疑选择了什么,只需从同一个名称中读取值即可

我的看法是:

var i;
var b = false;
$("select").change(function(){
    if($("option:selected",this).hasClass('custom')){
     i = $('<input />').attr('name','values').insertAfter(this);   
         }else{
          $(i).remove();   
         }
});

$('form').submit(function(e){
    if (!b){
   e.preventDefault();
    if ($(i).length>0){
     $('select').remove();  
    } else{
     $(i).remove();   
    }
     b = true;
    $(this).trigger('submit');
}

});
vari;
var b=假;
$(“选择”).change(函数(){
if($(“选项:选中”,this).hasClass('custom')){
i=$('').attr('name','values').insertAfter(this);
}否则{
$(i).删除();
}
});
$('form')。提交(函数(e){
如果(!b){
e、 预防默认值();
如果($(i).长度>0){
$('select').remove();
}否则{
$(i).删除();
}
b=正确;
$(this.trigger('submit');
}
});

示例:(查看表单提交数据,对字段使用相同的名称,并且没有重复的条目,即组合框和输入框)。

这与组合框有什么不同?就像这里看到的示例一样:组合框的可能副本通常允许您在与select相同的空间中键入内容,并且通常键入选项总是在那里。我希望我的用户必须特别选择“自定义”,然后键入。这与组合框有什么不同?就像这里看到的示例一样:组合框的可能副本通常允许您在与select相同的空间中键入内容,并且通常键入选项总是在那里。我希望我的用户必须特别选择“自定义”,然后键入。