使用文本框/隐藏输入来选择选项值?

时间:2017-05-23 08:10:44

标签: jquery html asp.net asp-classic

我目前正在寻找以下值(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>

2 个答案:

答案 0 :(得分:1)

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

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

&#13;
&#13;
function MM_setTextOfTextfield(input) {
  var count = $("select[name='Category'] option").length;
  $("select[name='Category']").append("<option val=\"" + count + "\">" + $("#" + input).val() + "</option>")
  $("#" + input).val("")
}
&#13;
<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>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

那么你可以在输入字段上附加一个'change'监听器,检测值何时改变,并在你的选择中附加一个带有值和文本的选项,这样的事情(没有经过测试但它应该有效,我在现在快点了; - )):

$('#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()的参数...