选择可能添加新记录的框

时间:2017-01-13 08:10:01

标签: javascript php jquery yii2

我有一个包含各种选项的选择框。你可以发短信,它会自动搜索匹配。如果找不到匹配项,我想创建类似“+”按钮的内容,您可以在其中添加新记录,并在下面的字段中指定它。所以我想搜索我的数据库,如果没有找到,则添加新记录。我对jQuery没有太多经验,但我认为有解决方案。

Select box

3 个答案:

答案 0 :(得分:1)

可能会有所帮助

  1. 您可以在选择框旁边创建新按钮,并将其隐藏起来。
  2. 当值不匹配时,您可以显示它,并且一旦用户点击数据库中的此按钮推送搜索框值,以便下次可用。

答案 1 :(得分:0)

单击添加按钮,您需要执行ajax调用以向数据库添加新数据。 添加后,您需要创建新选项,并需要将其附加到您的选择字段。 以下代码段可能会对您有所帮助

function addDataToDatabase(value_to_be_add){
$.ajax({
  type:"POST",
  url : 'addToDatabase.php',
  data:{data:value_to_be_add},
  dataType: 'json',
  success: function(data){
    if(data['success']=='true'){
        var new_option = '<option value="'+data['id']+'">' + value_to_be_add + '</option>';
        $('#select_field_id').append(new_option);
    }else{
      alert("fail to add to database");
    }
  }
});

}

数据[&#39; id&#39;]:是使用此ajax调用添加的数据的ID。

答案 2 :(得分:0)

根据搜索条件,搜索参数发送到服务器,如果未找到将返回空对象的数据。基于空响应,只需启用隐藏添加(+)按钮,点击添加按钮后选中的新值将存储在数据库中,并在成功响应中使用下面的代码高亮输入值

function SelectElement(val)
{    
    var el= document.getElementById('selBox');
    el.value = val;
}