我想改变行为,即使在下拉jquery中没有更改选项

时间:2014-07-29 12:58:18

标签: javascript jquery html

我要求包含用户输入和下拉列表。 我使用jquery的.change()方法实现它。 使用.change()函数可以在我选择"输入值"时输入输入。选项。 为了使此代码再次起作用,我将不得不更改选择。即。

当我点击"输入值"选项再次,没有索引将被更改,什么都不会发生。 如何在不更改所选选项的情况下将焦点放在文本框中。 总之,我希望当前的功能可以多次工作,而不必选择其他选项。

我在js小提琴中的代码是: My code in jsfiddle

jQuery(".gfield_select").change(function() {
    var val = jQuery(this).val();
    var enter = jQuery(this).parent().find('option:selected').text();
    var x = jQuery(this).parent();
    if (enter ==="Enter a value" || enter === "Enter value"){
      var holder = x.find('.holder');
      holder.val('');          
      holder.prop('disabled',false);
      holder.focus();
    } else {
      x.find('.holder').val(x.find('option:selected').text());
      x.find('.holder').prop('disabled',true);
    }
});

1 个答案:

答案 0 :(得分:0)

您可以将选择值更改为“0”,从而在将焦点放在输入字段后显示“无”。

jQuery(".gfield_select").change(function() {
    var val = jQuery(this).val();
    var enter = jQuery(this).parent().find('option:selected').text();
    var x = jQuery(this).parent();
    if (enter ==="Enter a value" || enter === "Enter value"){
      var holder = x.find('.holder');
      holder.val('');          
      holder.prop('disabled',false);
      holder.focus();
      jQuery(this).val("0"); // Change select value to None.
    } else {
      x.find('.holder').val(x.find('option:selected').text());
      x.find('.holder').prop('disabled',true);
    }
});