使用 textbox/hidden 输入提供 select 选项值?

Feed select option value with textbox/hidden input?

我目前正在寻找以下值 (id="categoryid")...

 <button class="btn btn-info btn-sm" onClick="MM_setTextOfTextfield('categoryid','','1')" data-toggle="modal" data-target="#AddNotesModal"><i class="fa fa-plus"></i> Add Notes
  </button>

 <input type="text" class="form-control" id="categoryid">

输入下面的选项值....

<select name="Category" required class="form-control">
           <option value="">Select...</option>
           <option value="______"><%=(rsNtsC.Fields.Item("NotesCategory").Value)%></option>

我该怎么做?如有必要,我愿意接受 jQuery、AJAX 和 javascript 解决方案。

非常感谢

编辑: 在我当前的设置中,使用 SQL 数据库中的一个值作为 ID 号,就像这样。我主要是想用文本框包含的任何内容替换从数据库中获取的值:

<select name="Category" required class="form-control">
               <option value="">Select...</option>
               <%
While (NOT rsNtsC.EOF)
%>
               <option value="<%=(rsNtsC.Fields.Item("NotesCategoryID").Value)%>"><%=(rsNtsC.Fields.Item("NotesCategory").Value)%></option>
               <%
  rsNtsC.MoveNext()
Wend
If (rsNtsC.CursorType > 0) Then
  rsNtsC.MoveFirst
Else
  rsNtsC.Requery
End If
%>
             </select>

如果您正在寻找将 input 的值包含到 select 中的方法,请使用下面的代码。

但请记住,一旦页面重新加载,select 的值就会消失。

function MM_setTextOfTextfield(input) {
  var count = $("select[name='Category'] option").length;
  $("select[name='Category']").append("<option val=\"" + count + "\">" + $("#" + input).val() + "</option>")
  $("#" + input).val("")
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn btn-info btn-sm" onClick="MM_setTextOfTextfield('categoryid')" data-toggle="modal" data-target="#AddNotesModal"><i class="fa fa-plus"></i> Add Notes
  </button>

<input type="text" class="form-control" id="categoryid">

<select name="Category" required class="form-control">
    <option value="">Select...</option>
</select>

好吧,你可以在输入字段上附加一个 'change' 侦听器,检测值何时更改并将带有值和文本的选项附加到你的 select,类似这样的东西(未测试但它应该有用,我现在很着急 ;-)):

$('#categoryid').on('change', function(){
var value = $(this).val();
$('select').append('<option value="' + value + '">' + value + '</option>');
});

或者如果你想在按钮点击时附加选项,你只需相应地更改侦听器,如下所示:

$('button').on('click', function(){
var value = $('#categoryid').val();
$('select').append('<option value="' + value + '">' + value + '</option>');
});

但要注意:当这些元素周围有一个表单标签时,您需要调用 e.preventDefault();如果您不希望浏览器每次都重新加载,请将 e 作为 function() 的参数...