js取不到input的值

时间:2022-11-08 19:30:46
*********** js ***************
 function onPartnerSubmit(){
     var partner_id = $("input[name = p_id]"); 
     var s = document.getElementsByTagName("p_id").value; 
     alert(s); 
     if(partner_id.val()==""){ 
     alert("partner_id is null");  
     partner_id.focus();  
    return false; 
    }
  }
********************js end ****************
**************jsp *******************

    <div id="simTestContent" >  
        <div class="partner_wrape">  
           <div class="parnter_img">   
             <div style="float:left; width:100px; height:40px; ">
           <input name="p_id" id="p_id" type="text"  class="input_11"  size="10" />    
           <img src="../static/img/button/join3.png" onclick="onPartnerSubmit();" style="cursor:pointer;" height="40" border="0" />   </div>  
 <div style="float:left; width:100px; height:40px; ">
<img src="../static/img/button/cancel3.png" onclick="closeWindown();" style="cursor:pointer;" height="40" border="0" />   </div>  
</div> 
</div> 
</div><!--simTestContent end-->
************************ jsp end *************************
上面的input取不到值,<input name="p_id" id="p_id" type="text" value="123456" class="input_11"  size="10" />
当input的value有值就可以取到,我在界面输入值取到的都是空值。感谢各位大能帮忙解决。谢谢!

11 个解决方案

#1


document.getElementsByTagName

改成 getElementById

#2



 function onPartnerSubmit(){
     var partner_id = $("#p_id"); 
     if(partner_id.val() == ""){ 
alert("partner_id is null");  
partner_id.focus();  
return false; 
     }
  }

#3


该回复于2014-10-06 09:06:37被管理员删除

#4


getElementsByTagName 是获取标签的方法
于你的方法内,则是查找 元素<p_id>,所以应该 alert(s) 弹窗提示应该是 undefined
至于你为什么初使赋值能取到值就不清楚为什么了

#5


1: var 值=document.getElementById("p_id").value; 
2: var 值=$("p_id").val();
alert(值),      

#6


document.getElementsByTagName("p_id").value; 
如果用这个括号里面必须是标签名(input,span,div等标签)而且他获取的是数组
应该用document.getElementById("p_id")这个是获取单个对象的。

#7



function onPartnerSubmit(){
var partner_id = $("#p_id"); 
var s = document.getElementById("p_id").value;
alert(s);
if(partner_id.val()==""){
alert("partner_id is null");
partner_id.focus();
return false;
}
}


各位介绍的方法都试过,还是取不到值!
当给<input>的value赋值,js就可以取到值!

#8


从你说的,我觉得奇怪就在几个浏览下试了下,没发现,要不进一步了说下你的情况

你的是什么浏览器呢? 如果可以把整个页面贴出来看下

#9


既然你写了class,用class选择器获取一下试试!

#10



function onPartnerSubmit(){
     var partner_id = $("# p_id"); 
     var s = $("# p_id").val(); 
     alert(s); 
     if(s==""){ 
     alert("partner_id is null");  
     partner_id.focus();  
    return false; 
    }
  }

#11



$("# p_id").val(); 

上面的这个写多了个空格,请去掉

#1


document.getElementsByTagName

改成 getElementById

#2



 function onPartnerSubmit(){
     var partner_id = $("#p_id"); 
     if(partner_id.val() == ""){ 
alert("partner_id is null");  
partner_id.focus();  
return false; 
     }
  }

#3


该回复于2014-10-06 09:06:37被管理员删除

#4


getElementsByTagName 是获取标签的方法
于你的方法内,则是查找 元素<p_id>,所以应该 alert(s) 弹窗提示应该是 undefined
至于你为什么初使赋值能取到值就不清楚为什么了

#5


1: var 值=document.getElementById("p_id").value; 
2: var 值=$("p_id").val();
alert(值),      

#6


document.getElementsByTagName("p_id").value; 
如果用这个括号里面必须是标签名(input,span,div等标签)而且他获取的是数组
应该用document.getElementById("p_id")这个是获取单个对象的。

#7



function onPartnerSubmit(){
var partner_id = $("#p_id"); 
var s = document.getElementById("p_id").value;
alert(s);
if(partner_id.val()==""){
alert("partner_id is null");
partner_id.focus();
return false;
}
}


各位介绍的方法都试过,还是取不到值!
当给<input>的value赋值,js就可以取到值!

#8


从你说的,我觉得奇怪就在几个浏览下试了下,没发现,要不进一步了说下你的情况

你的是什么浏览器呢? 如果可以把整个页面贴出来看下

#9


既然你写了class,用class选择器获取一下试试!

#10



function onPartnerSubmit(){
     var partner_id = $("# p_id"); 
     var s = $("# p_id").val(); 
     alert(s); 
     if(s==""){ 
     alert("partner_id is null");  
     partner_id.focus();  
    return false; 
    }
  }

#11



$("# p_id").val(); 

上面的这个写多了个空格,请去掉