如何将SQL返回数组更改为一个值并返回到前端?

时间:2018-08-18 07:18:58

标签: javascript jquery node.js ajax express

我是Node.js和Ajax的初学者。我想创建一个判断按钮来判断从用户输入的值,无论用户是否使用过。但是我遇到了一个问题,当我使用knex SQL Builder从数据库中获取返回数据时,我想计算该值,发现返回数据为[{'count({Program_Codename)':1}]。 如何获取仅值计数数字?

这是我的后端代码:

router.post('/',function(req,res){
	console.log(req.body.Program_name);
	 db('program_detail').count('Program_Codename').where('Program_Codename',req.body.Program_name).asCallback(function(err,values){
        if(err){
			console.log(err);
		}else{
			console.log(values);
			if(values > 0){
				res.json({success:1});
				//console.log(req.body.Program_name);
				console.log("This Program_Codename has already been used.")
				
			}else{
				console.log("This Program_Codename can be used.")
			}
		}
		db.destroy();
	 });
	
});

module.exports = router;

此外,我想将判断结果返回到前端网站,以使用ajax告诉用户结果,我该怎么办?

这是我的前端Ajax代码:

  $(document).ready(function(){
      $("#checkname_btn").click(function(){
       console.log("test");
       var Program_name = { Program_name : $(':input[name=Program_Codename]').val()};
       
       $.ajax({
    			data: Program_name,
    			url: '/check',
                dataType: 'json',
                type:'post',
    			cache: false,
    			timeout: 5000,
    			success: function(data){
    				var data = $.parseJSON(data);
    			},
    			error: function(jqXHR, textStatus, errorThrown){
    				alert('error ' + textStatus + " " + errorThrown);  
    			}
    		});

         //$(':input[name=Program_Codename]').next().next().after('<div id = "id" align="center">'+message+'</div>');
         //$(':input[name=Program_Codename]').focus(function(){
         //$('#id').remove();

           return false;
        });

      
   });

注释掉的代码是我想要的结果,但是我不知道该怎么做。我想在“判断”按钮下向用户实时反馈。

顺便说一下,我可以从前端传递值。

请帮助我...感谢您的支持。如果您需要更多信息,可以告诉我。

我的按钮代码:

 <td class="td-edit">Program/Codename:</td>
                            <td class="td-edit">
                                <input class="form-control-edit" type="text" name="Program_Codename">
                                <br><button class="btn btn-primary" id=checkname_btn>Check Program/Codename</button>
                            </td>

1 个答案:

答案 0 :(得分:1)

通过此代码获取计数:

var count = values[0]['count(Program_Codename)'];