ajax怎么获取js动态添加的<input id="checkbox1" type="checkbox" value="值" /

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax怎么获取js动态添加的<input id="checkbox1" type="checkbox" value="值" /相关的知识,希望对你有一定的参考价值。

checkbox的值要是选中的

最好要源代码,有例子最好了

急啊 。。。求大神指教。。

你要获取的是选中的checkbox值是吧?那你这样写,名为头图的给一个name,别的都给一个name.
这样写:
<input name="checkbox1" type="checkbox" value="头图" />头图
<input name="checkbox1" type="checkbox" value="头图" />头图
<input name="checkbox1" type="checkbox" value="头图" />头图
剩下的几个同理。
想取得值,这样写:
var checkbox1 = document.getElementsByName("checkbox1");
var checkboxAll1="";
for(var i=0;i<checkbox1.length;i++)
if(checkbox1[i].checked)
checkboxAll1+=checkbox1[i].value+","//将选中的值拼接,用“,”隔开


这里checkboxAll1就是你头图的所有选中的值,你把这个值传到action中处理,只要获得这个值,然后checkboxAll1.split(",");得到一个数组,数组元素就是你要的结果,然后遍历数组就可以了。
如果你每一个都有id,可以用js:
document.getElementById(这里是id值).value;

或者:$("#后边是id").val();就可以取到,但是这样不能判断你获取的值已经选中。你还需要挨个判断,所以,用我上边的方法,用for循环判断可以提高效率。希望对你有帮助。追问

我要后台获取到值,保存到数据库啊 。 前台获取到了值,后台怎么获取啊 。

追答

你传值会不会?在js里可以直接用window.location.href="这里写你的action?checkboxAll1="+checkboxAll1;
这样就把拼接的值传到你的action了。你在后台这样获取,
String checkboxAll1 = request.getAttribute("checkboxAll1").toString;
如果你用的是ssh框架做的,那就没必要这么取值了。如果你是用servlet,没用框架,你可以这样。如果这样获取不到,你就试试String checkboxAll1 = request.getPrameter("checkboxAll1");
获取到的是数组拼接,上边已经给你写了怎么获取数组元素了。用split方法分割。

参考技术A 1、确保ajax获取之前这个<input id="checkbox1" type="checkbox" value="xxx" />已经创建成功,并且value已经赋值完成。

2、ajax获取值的办法:
1、var val = document.getElementById("checkbox1").value;
或者用jQuery也可以:
2、var val = $("#checkbox1").val();
参考技术B 第一种
document.getElementById("Checkbox1").value

第二种
$("#Checkbox1").val()
第二种你得引用 jquery-1.4.2.js 这个文件
参考技术C 我进来的原因是从你的提问标题上我发现百度知道的提问标题字段居然是没过滤html的,我直接看到了一个输入框,看来百度肯定养了支强大的前端团队!

jquery ajax怎么动态获取url

我的jquery ajax其中url的链接上 url: "$ctx/userquery/userIdentity.do?",前面是项目名称 是动态获取的
怎么拼接才能让$ctx是个变量而不是个字符串啊!其中 $ctx已经定义好了 是这个<c:set var="ctx" value="$pageContext.request.contextPath"></c:set> 。现在不知道改怎么放 能算是个变量

你好 我只想说一句 jquery支持el表达式······
var str=“$pageContext.request.contextPath/userquery.do?xxx=xxx”
为何不直接用 还要c set设置变量搞么么? 当然 要是分离出去了就不支持了 页面中是支持的
希望能帮到你 谢谢
参考技术A

$ctx 改不了,页面打开的时候如果不出错,那绝对就是一个定下来的字符串,通俗点理解就是 $pageContext.request.contextPath 是从后端传来的一个值, 要改为变量有很多种办法:

    前端定义变量,在页面中定义 var $ctx = "$ctx"; 这个$ctx 是可以变的,ajax url 中可以随意定制了。

    后端定义传递,因为不知道你的项目整体架构,给不了建议

参考技术B <script type="text/javascript">
function getUrlPara(paraName)
var sUrl = location.href;
var sReg = "(?:\\?|&)1"+paraName+"=([^&]*)"
var re=new RegExp(sReg,"gi");
re.exec(sUrl);
return RegExp.$1;

//应用实例:test_para.html?a=11&b=22&c=33
alert(getUrlPara("a"));
alert(getUrlPara("b"));
</script>
参考技术C 用Ajax的data来取得这个变量
$.ajax(
type: "POST",
url: "你的action",
data: "提交的数据",
success: function(data)
alert(data);//返回的数据

);
参考技术D 和javascript有什么关系?

以上是关于ajax怎么获取js动态添加的<input id="checkbox1" type="checkbox" value="值" /的主要内容,如果未能解决你的问题,请参考以下文章

如何用js在页面中添加元素?

layui.js怎么在文本框后面添加必填的*符号

js中怎样动态添加一个li

html能过JS获取PHP中的值?

在js中怎么给动态生成的元素绑定事件

文本框的值改变了,js怎么获取