这是我的HTML:
<form name='cred' class="panel-body2">
<div class="form-group">
<label for='addjidlbl'> Username (JID):</label>
<input type='text' id='addjid' />
</div>
<input type='button' id='add' value='add' />
</form>
这是JavaScript:
$('#add').bind('click', function() {
var jid = $('#addjid').value;
alert(jid);
//var jid=document.getElementById('addjid').value;
var jid2 =$('#addjid').get(0).value;
alert(jid2);
// //$('#addjid').get(0).value;
log('jid=>'+jid);
var data = document.getElementById("addjid").value; //$(".panel.panel-default2#addjid").value;
alert(data);
alert("type=>"+ typeof(jid));
addRoster(jid);
});
function addRoster(jid) {
log('addRoster=>' + jid);
}
我得到的是两个带有“undefined”的消息框,第三个带有“type =&gt; undefined”的消息框。为什么我无法获取addjid
文本框的输入文本?
如果我更改var jid = $('#addjid').get(0).value;
,即使文本框有值,jid
也只是空白。为什么?
答案 0 :(得分:4)
将.value更改为.val(),如
$(&#39;#addjid&#39)。值
应该是
$(&#39;#addjid&#39)。VAL()
答案 1 :(得分:0)
如果我理解正确,你想:
$('#addjid').val()
答案 2 :(得分:0)
由于您使用id来获取值,因此您将只有一个具有给定id的元素。当您执行.get(0)或任何索引时,通常会尝试从给定的值数组中获取值。对于Ex
<li>first</li> //0
<li>second</li> //1
在这样的结构中你会做类似的事情 $( “李”)。得到(0)
它将为您提供li中的第一个项目。
并获得您需要使用的值 .val()
所以你可以使用
$('#addjid').val()
希望这会对你有所帮助。
快乐学习:)
答案 3 :(得分:0)
您可以使用.val()
在文本框中添加一些文字 单击添加按钮,将弹出警告
$('#add').on('click', function() {
alert($('#addjid').val());
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form name='cred' class="panel-body2">
<div class="form-group">
<label for='addjidlbl'> Username (JID):</label>
<input type='text' id='addjid' />
</div>
<input type='button' id='add' value='add' />
</form>
&#13;