http://www.mizuiren.com/blog/349.html 这篇文章中是说赋值不行,取值可以的原因和处理方法,我遇到的情况不一样,但还是想分享一下
这个问题花了将近一天时间怎么回事???最后原因是input的id或name重复了
1、首先介绍下取值方式吧
<div id="cs">
<input type="text" value="初始值" class="form-control" id="csinput" name="csinput2" onblur="blur1(this)" style="width:150px;"/>
<input id='button1' type='button' onclick="click1()" value='弹出'>
</div>
<script>
function click1(){//点击按钮弹出输入值
alert($('#csinput').val())
alert($("input[name='csinput2']").val())
alert(document.getElementById("csinput").value)
alert(document.getElementByName("csinput2").value)
alert($("#cs").find("input").val())
}
//失焦弹出输入值
function blur1(a){
alert(a.value);
alert($('#csinput').val())
}
</script>
2、问题解决心路历程
1)写了一个form提交前触发的方法,获取table单行tr中的所有iput内容,组合放到其中一个input中。发现value有初始值的可以取到,新填写的并不能
2)简化到click1方法,不管输入了什么内容,全弹出“初始值”;blur1方法,第一个弹出了输入值,第二个弹出“初始值”
2)在click1和blur1中用 console.log($('#csinput'))打印,仅有一个元素(length为1)
3)因为我写的这个input是放在另一个子jsp,用<%@ include file="..xxxxx.jsp" %>的方式引入的。所以,我将input输入框复制了一个id、name改掉放到了主jsp中,发现可以弹出输入的值
4)主jsp中,我有两个地方引入了这个子jsp,虽然在子jsp中,用了<c:if test="">的判断,但没有再主jsp引用时判断,导致引用了这个两遍,其实是存在两个id和name相同的input的
标签:jquery,name,val,alert,jsp,input,js,输入 From: https://www.cnblogs.com/xlj227/p/16846782.html