输入文本框 Returns 未在 Javascript 中定义
Input Text Box Returns Undefined in Javascript
这是我的 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=>undefined" 的消息框。为什么我获取不到addjid
文本框的输入文本?
如果我更改 var jid = $('#addjid').get(0).value;
,即使文本框有值,jid
也只是空白。为什么?
将 .value 更改为 .val(),如
$('#addjid').value
应该是
$('#addjid').val()
如果我没理解错的话,你想要:
$('#addjid').val()
由于您使用 id 来获取值,因此您将只有一个元素具有给定的 id。当您执行 .get(0) 或任何索引时,您通常会尝试从给定的值数组中获取值。例如
<li>first</li> //0
<li>second</li> //1
在这样的结构中,你会做类似的事情
$("li").get(0)
它将为您提供第一个带 in li 的项目。
要获得您需要使用的值 .val()
所以你可以使用
$('#addjid').val()
希望对您有所帮助。
快乐学习:)
在这里你可以使用 .val()
在文本框中添加一些文本,然后
单击添加按钮,将弹出警报
$('#add').on('click', function() {
alert($('#addjid').val());
});
<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>
这是我的 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=>undefined" 的消息框。为什么我获取不到addjid
文本框的输入文本?
如果我更改 var jid = $('#addjid').get(0).value;
,即使文本框有值,jid
也只是空白。为什么?
将 .value 更改为 .val(),如
$('#addjid').value
应该是
$('#addjid').val()
如果我没理解错的话,你想要:
$('#addjid').val()
由于您使用 id 来获取值,因此您将只有一个元素具有给定的 id。当您执行 .get(0) 或任何索引时,您通常会尝试从给定的值数组中获取值。例如
<li>first</li> //0
<li>second</li> //1
在这样的结构中,你会做类似的事情 $("li").get(0)
它将为您提供第一个带 in li 的项目。
要获得您需要使用的值 .val()
所以你可以使用
$('#addjid').val()
希望对您有所帮助。
快乐学习:)
在这里你可以使用 .val()
在文本框中添加一些文本,然后 单击添加按钮,将弹出警报
$('#add').on('click', function() {
alert($('#addjid').val());
});
<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>