jQuery获取Radio选择的Value值||两个select之间option的互相添加操作(jquery实现)
jQuery获取Radio选择的Value值:
1. $("input[name='radio_name'][checked]").val(); //选择被选中Radio的Value值
2. $("#text_id").focus(function(){//code...}); //事件 当对象text_id获取焦点时触发
3. $("#text_id").blur(function(){//code...}); //事件 当对象text_id失去焦点时触发
4. $("#text_id").select(); //使文本框的Vlaue值成选中状态
5. $("input[name='radio_name'][value='要中Radio的Value值']").attr("checked",true); jQuery获取CheckBox选择的Value
语法解释:
1. $("input[name='checkbox_name'][checked]"); //选择被选中CheckBox元素的集合 如果你想得到Value值,你需要遍历
2. $($("input[name='checkbox_name'][checked]")).each(function(){arrChk+=this.value + ',';}); //遍历被选中CheckBox元素的集合 得到Value值
3. $("#checkbox_id").attr("checked"); //获取一个CheckBox的状态(有没有被选中,返回true/false)
4. $("#checkbox_id").attr("checked",true); //设置一个CheckBox的状态为选中(checked=true)
5. $("#checkbox_id").attr("checked",false); //设置一个CheckBox的状态为不选中(checked=false)
6. $("input[name='checkbox_name']").attr("checked",$("#checkbox_id").attr("checked"));
7. $("#text_id").val().split(","); //将Text的Value值以','分隔 返回一个数组
用JavaScript使页面上的一组checkbox全选/取消全选,逻辑很简单,实现代码也没有太难的语法。但使用jQuery实现则更简单,代码也很简洁,精辟!
<input type="checkbox" name="chk_list" id="chk_list_1" value="1" />1<br />
<input type="checkbox" name="chk_list" id="chk_list_2" value="2" />2<br />
<input type="checkbox" name="chk_list" id="chk_list_3" value="3" />3<br />
<input type="checkbox" name="chk_list" id="chk_list_4" value="4" />4<br />
<input type="checkbox" name="chk_all" id="chk_all" />全选/取消全选
<script type="text/javascript">
$("#chk_all").click(function() { $("input[name='chk_list']").attr("checked",$(this).attr("checked"));});
</script>
jQuery.attr 获取/设置对象的属性值,如:
$("input[name='chk_list']").attr("checked"); //读取所有name为'chk_list'对象的状态(是否选中)
$("input[name='chk_list']").attr("checked",true); //设置所有name为'chk_list'对象的checked为true
再如:
$("#img_1").attr("src","test.jpg"); //设置ID为img_1的<img>src的值为'test.jpg'
$("#img_1").attr("src"); //读取ID为img_1的<img>src值
下面的代码是获取上面实例中选中的checkbox的value值:
<script type="text/javascript"> //获取到所有name为'chk_list'并选中的checkbox(集合)
var arrChk=$("input[name='chk_list]:checked"); //遍历得到每个checkbox的value值
for (var i=0;i<arrChk.length;i++){ alert(arrChk[i].value); }
</script>
<script type="text/javascript">
var arrChk=$("input[name='chk_list']:checked"); $(arrChk).each(function() { window.alert(this.value); }); });</script>
jQuery获取Select选择的Text和Value:
语法解释:
1. $("#select_id").change(function(){//code...}); //为Select添加事件,当选择其中一项时触发
2. var checkText=$("#select_id").find("option:selected").text(); //获取Select选择的Text
3. var checkValue=$("#select_id").val(); //获取Select选择的Value
4. var checkIndex=$("#select_id ").get(0).selectedIndex; //获取Select选择的索引值
5. var maxIndex=$("#select_id option:last").attr("index"); //获取Select最大的索引值
jQuery设置Select选择的Text和Value:
语法解释:
1. $("#select_id ").get(0).selectedIndex=1; //设置Select索引值为1的项选中
2. $("#select_id ").val(4); //设置Select的Value值为4的项选中
3. $("#select_id option[text='jQuery']").attr("selected", true); //设置Select的Text值为jQuery的项选中
jQuery添加/删除Select的Option项:
点击一次,Select将追加一个Option
点击将在Select第一个位置插入一个Option
点击将删除Select中索引值最大Option(最后一个)
1. $("#select_id").append("<option value='Value'>Text</option>"); //为Select追加一个Option(下拉项)
2. $("#select_id").prepend("<option value='0'>请选择</option>"); //为Select插入一个Option(第一个位置)
3. $("#select_id option:last").remove(); //删除Select中索引值最大Option(最后一个)
4. $("#select_id option[index='0']").remove(); //删除Select中索引值为0的Option(第一个)
5. $("#select_id option[value='3']").remove(); //删除Select中Value='3'的Option
5. $("#select_id option[text='4']").remove(); //删除Select中Text='4'的Option
JQUERY获取text,areatext,radio,checkbox,select值
jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关
获取一组radio被选中项的值
var item = $('input[@name=items][@checked]').val();
获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();
select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;
radio单选组的第二个元素为当前选中值
$('input[@name=items]').get(1).checked = true;
获取值:
文本框,文本区域:$("#txt").attr("value");
多选框checkbox:$("#checkbox_id").attr("value");
单选组radio: $("input[@type=radio][@checked]").val();
下拉框select: $('#sel').val();
控制表单元素:
文本框,文本区域:$("#txt").attr("value",'');//清空内容
$("#txt").attr("value",'11');//填充内容
多选框checkbox: $("#chk1").attr("checked",'');//不打勾
$("#chk2").attr("checked",true);//打勾
if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
单选组radio: $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
下拉框select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
$("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//添加下拉框的option
$("#sel").empty();//清空下拉框
----------------------------------------------------------------------------------------------------
//遍历option和添加、移除option
function changeShipMethod(shipping){
var len = $("select[@name=ISHIPTYPE] option").length
if(shipping.value != "CA"){
$("select[@name=ISHIPTYPE] option").each(function(){
if($(this).val() == 111){
$(this).remove();
}
});
}else{$("<option value='111'>UPS Ground</option>").appendTo($("select[@name=ISHIPTYPE]"));}}
//取得下拉選單的選取值
$(#testSelect option:selected').text();
或$("#testSelect").find('option:selected').text();
或$("#testSelect").val();
//////////////////////////////////////////////////////////////////
记性不好的可以收藏下:
1,下拉框:
var cc1 = $(".formc select[@name='country'] option[@selected]").text(); //得到下拉菜单的选中项的文本(注意中间有空格)
var cc2 = $('.formc select[@name="country"]').val(); //得到下拉菜单的选中项的值
var cc3 = $('.formc select[@name="country"]').attr("id"); //得到下拉菜单的选中项的ID属性值
$("#select").empty();//清空下拉框//$("#select").html('');
$("<option value='1'>1111</option>").appendTo("#select")//添加下拉框的option
稍微解释一下:
1.select[@name='country'] option[@selected] 表示具有name 属性,
并且该属性值为'country' 的select元素 里面的具有selected 属性的option 元素;
可以看出有@开头的就表示后面跟的是属性。
2,单选框:
$("input[@type=radio][@checked]").val(); //得到单选框的选中项的值(注意中间没有空格)
$("input[@type=radio][@value=2]").attr("checked",'checked'); //设置单选框value=2的为选中状态.(注意中间没有空格)
3,复选框:
$("input[@type=checkbox][@checked]").val(); //得到复选框的选中的第一项的值
$("input[@type=checkbox][@checked]").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出
alert($(this).val());
});
$("#chk1").attr("checked",'');//不打勾
$("#chk2").attr("checked",true);//打勾
if($("#chk1").attr('checked')==undefined){} //判断是否已经打勾
当然jquery的选择器是强大的. 还有很多方法.
<script src="jquery-1.2.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$("#selectTest").change(function()
{//alert("Hello");//alert($("#selectTest").attr("name"));//$("a").attr("href","xx.html");//window.location.href="xx.html";
//alert($("#selectTest").val());
alert($("#selectTest option[@selected]").text());
$("#selectTest").attr("value", "2");
});
});
</script>
<a href="#">aaass</a>
<!--下拉框-->
<select id="selectTest" name="selectTest">
<option value="1">11</option><option value="2">22</option><option value="3">33</option>
<option value="4">44</option><option value="5">55</option><option value="6">66</option>
</select>
jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关获取一组radio被选中项的值
var item = $('input[@name=items][@checked]').val();
获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();
select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;
radio单选组的第二个元素为当前选中值
$('input[@name=items]').get(1).checked = true;
获取值:
文本框,文本区域:$("#txt").attr("value");
多选框checkbox:$("#checkbox_id").attr("value");
单选组radio: $("input[@type=radio][@checked]").val();
下拉框select: $('#sel').val();
控制表单元素:
文本框,文本区域:$("#txt").attr("value",'');//清空内容
$("#txt").attr("value",'11');//填充内容
多选框checkbox: $("#chk1").attr("checked",'');//不打勾
$("#chk2").attr("checked",true);//打勾
if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
单选组radio: $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
下拉框select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
$("<optionvalue='1'>1111</option><optionvalue='2'>2222</option>").appendTo("#sel")//添加下拉框的option
$("#sel").empty();//清空下拉框
获取一组radio被选中项的值
var item = $('input[@name=items][@checked]').val();
获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();
select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;
radio单选组的第二个元素为当前选中值
$('input[@name=items]').get(1).checked = true;
获取值:
文本框,文本区域:$("#txt").attr("value");
多选框checkbox:$("#checkbox_id").attr("value");
单选组radio: $("input[@type=radio][@checked]").val();
下拉框select: $('#sel').val();
控制表单元素:
文本框,文本区域:$("#txt").attr("value",'');//清空内容
$("#txt").attr("value",'11');//填充内容
多选框checkbox: $("#chk1").attr("checked",'');//不打勾
$("#chk2").attr("checked",true);//打勾
if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
单选组radio: $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
下拉框select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
$("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//添加下拉框的option
$("#sel").empty();//清空下拉框
记录一下。
本来以为jQuery("#select1").val();是取得选中的值,
那么jQuery("#select1").text();就是取得的文本。
这是不正确的,正确做法是:
jQuery("#select1 option:selected").text();
两个select之间option的互相添加操作(jquery实现)
两个select,将其中一个select选中的选项添加到另一个select中,或者点击全部添加按钮将所有的option都添加过去.
自己写了一个很简单的jquery插件,在页面中调用其中的函数就可实现.
插件源代码(listtolist.js):
Js代码
/**
fromid:源list的id.
toid:目标list的id.
moveOrAppend参数("move"或者是"append"):
move -- 源list中选中的option会删除.源list中选中的option移动到目标list中,若目标list中已存在则该option不添加.
append -- 源list中选中的option不会删除.源list中选中的option添加到目标list的后面,若目标list中已存在则该option不添加.
isAll参数(true或者false):是否全部移动或添加
*/
jQuery.listTolist = function(fromid,toid,moveOrAppend,isAll) {
if(moveOrAppend.toLowerCase() == "move") { //移动
if(isAll == true) { //全部移动
$("#"+fromid+" option").each(function() {
//将源list中的option添加到目标list,当目标list中已有该option时不做任何操作.
$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
});
$("#"+fromid).empty(); //清空源list
}
else if(isAll == false) {
$("#"+fromid+" option:selected").each(function() {
//将源list中的option添加到目标list,当目标list中已有该option时不做任何操作.
$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
//目标list中已经存在的option并没有移动,仍旧在源list中,将其清空.
if($("#"+fromid+" option[value="+$(this).val()+"]").length > 0) {
$("#"+fromid).get(0)
.removeChild($("#"+fromid+" option[value="+$(this).val()+"]").get(0));
}
});
}
}
else if(moveOrAppend.toLowerCase() == "append") {
if(isAll == true) {
$("#"+fromid+" option").each(function() {
$("<option></option>")
.val($(this).val())
.text($(this).text())
.appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
});
}
else if(isAll == false) {
$("#"+fromid+" option:selected").each(function() {
$("<option></option>")
.val($(this).val())
.text($(this).text())
.appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
});
}
}
};
/**
功能大体同上("move").
不同之处在于当源list中的选中option在目标list中存在时,源list中的option不会删除.
isAll参数(true或者false):是否全部移动或添加
*/
jQuery.list2list = function(fromid,toid,isAll) {
if(isAll == true) {
$("#"+fromid+" option").each(function() {
$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
});
}
else if(isAll == false) {
$("#"+fromid+" option:selected").each(function() {
$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
});
}
};
<script type="text/javascript">
jQuery(function($)
{ //获取select文本和值
$("#submitBut").click(function(){ //注意空格
//var strText = $("select[@name=fselect] option[@selected]").text();
// var strValue = $("select[@name=fselect] option[@selected]").val();
//alert(strText + ":" + strValue);
//选中值为t3项
$("#fselect").attr("value", "t3"); //选中第二项
$('#fselect')[0].selectedIndex = 1;
alert($("#fselect")[0].length);
});
//select改变时获取当前选项的值和文本
$("#fselect").change(function(){ //获取总的选项
//alert($(this)[0].length);
//获取的所有的文本 var strText = $(this).text();
//获取当前选中值 var strValue = $(this).val();
//alert(strText + ":" + strValue);
//选中值为t3项 //选中第二项
//$(this)[0].selectedIndex = 3; //$(this).attr("value", "t3"); / /$("#fselect")[0].options[2].selected = true;
//获得当前选中的文本
//显示索引为2的文本
var nCurrent = $(this)[0].selectedIndex;
alert($("#fselect")[0].options[nCurrent].text);
alert(strValue);
});
//增加select
$("#add").click(function(){
var nLength = $("#fselect")[0].length;
var option = document.createElement("option");;
option.text = "Text" + (nLength+1).toString();
option.value = "t" + (nLength+1).toString();
$("#fselect")[0].options.add(option);
//$("#fselect").addOption("Text" + (nLength+1).toString(), "t" + (nLength+1).toString(), true);
}); //清空select
$("#clear").click(function(){
$("#fselect").empty();
}); //清空一项
$("#remove").click(function(){
var index = $("#fselect")[0].selectedIndex;
//$("#fselect")[0].remove(index);
$("#fselect")[0].options[index] = null;
});
})
</script>
其他有关select的取值或赋值方式:
获取select被选中项的文本
var item = $("select[@name= stsoft] option[@selected]").text();
select下拉框的第二个元素为当前选中值
$('#stsoft')[0].selectedIndex = 1;
获取value值
$('#stsoft').val();
设置value=1的项目为当前选中项
$("#stsoft").attr("value",“1”);
$('#stsoft').val(“1”);
Js代码
1. /**
2. fromid:源list的id.
3. toid:目标list的id.
4. moveOrAppend参数("move"或者是"append"):
5. move -- 源list中选中的option会删除.源list中选中的option移动到目标list中,若目标list中已存在则该option不添加.
6. append -- 源list中选中的option不会删除.源list中选中的option添加到目标list的后面,若目标list中已存在则该option不添加.
7.
8. isAll参数(true或者false):是否全部移动或添加
9. */
10. jQuery.listTolist = function(fromid,toid,moveOrAppend,isAll) {
11. if(moveOrAppend.toLowerCase() == "move") { //移动
12. if(isAll == true) { //全部移动
13. $("#"+fromid+" option").each(function() {
14. //将源list中的option添加到目标list,当目标list中已有该option时不做任何操作.
15. $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
16. });
17. $("#"+fromid).empty(); //清空源list
18. }
19. else if(isAll == false) {
20. $("#"+fromid+" option:selected").each(function() {
21. //将源list中的option添加到目标list,当目标list中已有该option时不做任何操作.
22. $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
23. //目标list中已经存在的option并没有移动,仍旧在源list中,将其清空.
24. if($("#"+fromid+" option[value="+$(this).val()+"]").length > 0) {
25. $("#"+fromid).get(0)
26. .removeChild($("#"+fromid+" option[value="+$(this).val()+"]").get(0));
27. }
28. });
29. }
30. }
31. else if(moveOrAppend.toLowerCase() == "append") {
32. if(isAll == true) {
33. $("#"+fromid+" option").each(function() {
34. $("<option></option>")
35. .val($(this).val())
36. .text($(this).text())
37. .appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
38. });
39. }
40. else if(isAll == false) {
41. $("#"+fromid+" option:selected").each(function() {
42. $("<option></option>")
43. .val($(this).val())
44. .text($(this).text())
45. .appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
46. });
47. }
48. }
49. }; /**
50. 功能大体同上("move").
51. 不同之处在于当源list中的选中option在目标list中存在时,源list中的option不会删除.
52. isAll参数(true或者false):是否全部移动或添加
53. jQuery.list2list = function(fromid,toid,isAll) {
54. if(isAll == true) {
55. $("#"+fromid+" option").each(function() {
56. $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
57. });
58. }
59. else if(isAll == false) {
60. $("#"+fromid+" option:selected").each(function() {
61. $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))"));
62. });
63. }
64. };
isAllif(isAll == true) { //$("#"+fromid+" option").each(function() { //$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); }); $("#"+fromid).empty(); //} else if(isAll == false) { $("#"+fromid+" option:selected").each(function() { //$(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); //if($("#"+fromid+" option[value="+$(this).val()+"]").length > 0) { $("#"+fromid).get(0) .removeChild($("#"+fromid+" option[value="+$(this).val()+"]").get(0)); } }); } } else if(moveOrAppend.toLowerCase() == "append") { if(isAll == true) { $("#"+fromid+" option").each(function() { $("<option></option>") .val($(this).val()) .text($(this).text()) .appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); }); } else if(isAll == false) { $("#"+fromid+" option:selected").each(function() { $("<option></option>") .val($(this).val()) .text($(this).text()) .appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); }); } } }; /** isAll$("#"+fromid+" option").each(function() { $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); }); } else if(isAll == false) { $("#"+fromid+" option:selected").each(function() { $(this).appendTo($("#"+toid+":not(:has(option[value="+$(this).val()+"]))")); }); } };
jQuery获取Radio选择的Value值||两个select之间option的互相添加操作(jquery实现)的更多相关文章
- jquery 获取radio被选中的值
<html> <head> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"& ...
- jQuery获取radio选中项的值【转藏】
<title></title> <script src="js/jquery-1.7.2.min.js"></script> < ...
- jquery获取radio单选框的值
1.获取原有单选框的值 var value=$("input[name='is_setting']:checked").val(); 2.获取重选后的单选框的值 <tr> ...
- 使用jQuery获取radio/checkbox组的值的代码收集
<!-- $("document").ready(function(){ $("#btn1").click(function(){ $("[na ...
- jquery获取radio和select选中值
//jquery 获取radio选中值 <input type="radio" name="c_type" value="a" > ...
- 使用jquery获取radio的值
使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项: ...
- jquery获取radio选中值及遍历
使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项:1.& ...
- jquery获取当前选项的属性值a
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
- js与jquery获取input输入框中的值
如何用javascript获取input输入框中的值,js/jq通过name.id.class获取input输入框中的value 先准备一段 HTML 一.jquery获取input文本框中的值 通过 ...
随机推荐
- java volatile的一个验证反例(转)
网上关于java volatile的资料已经不少了,但搜了好久也没看到谁用代码很好地验证过使不使用volatile的差异.最近自己写了个测试,意外的看到了两者的明显区别,为什么说意外呢,因为根据我的测 ...
- Log4net 日志
Log4net 日志使用介绍 概述 Log4net 有三个主要组件:loggers,appenders 和 layouts.这三个组件一起工作使得开发者能够根据信息类型和等级(Level)记录信息,以 ...
- 【核心研究】消息队列_MessageQueue
消息队列排队过程中的消息.这第一条消息将首先被处理.但假设消息本身指定要处理的时间.我们必须等待,直到时间的消息处理能力.新闻MessageQueue正在使用Message类的表示,队列中的邮件保存结 ...
- react.js 从零开始(六)Reconciliation
Reconciliation React 的关键设计目标是使 API 看起来就像每一次有数据更新的时候,整个应用重新渲染了一样.这就极大地简化了应用的编写,但是同时使 React 易于驾驭,也是一 ...
- thinkphp学习笔记8—命名空间
原文:thinkphp学习笔记8-命名空间 新版本(3.2)中采用命名空间的方式定义和加载类库文件,解决多个模块之间的冲突问题,并实现了更加高效的自动加载机制. 需要给类库定义所在的命名空间,命名空间 ...
- 用jQuery写了一个模态框插件
用jQuery写了一个模态框插件 大家觉得下面的框框好看么, 水印可以去掉(这个任务交给你们了(- o -)~zZ); "info"框 $("div").con ...
- 使用linux服务logrotate文件tomcat日志文件
使用notepad++编辑本地文件 tomcat: /usr/tomcat/logs/catalina.out { copytruncate daily dateext nocompress miss ...
- HDU 1203 I NEED A OFFER!(dp)
Problem Description Speakless很长时间,我想出国.现在,他已经完成了所有需要的检查.准备好所有要准备的材料,于是,便须要去申请学校了.要申请国外的不论什么大学.你都要交纳一 ...
- 图解zookeeper FastLeader选举算法
zookeeper当配置为群集模式,在启动或异常情况将被选举为的例子Leader.默认选择算法FastLeaderElection. 不知道zookeeper够考虑这样一个问题:某个服务能够配置为多个 ...
- 基于Qt语音识别功能
基于在最近的研究Qt语音识别平台下.在此记录12 首先,语音识别做三件事 1.记录用户的语音文件到本地 2.将用户语音编码 使用flac或者speex进行编码 3.使用第三方语音识别API或者SDK进 ...