console.log 在我的输入字段中给出 undefined
console.log gives out undefined on my input field
脚本:
$(document).ready(function (){
$(document).on('click', '.add_category', function(e){
e.preventDefault();
var data = {
'category_name': $('.category_name').val(),
'category_description': $('.category_description').val(),
}
console.log(data);
});
});
形式:
<h4 class="text-center font-weight-bold">Add New Category</h4>
<div class="form-group">
<input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
</div>
<div class="form-group">
<textarea class="form-control w-100" placeholder="Category Description" class="category_description" cols="50" rows="10"></textarea>
</div>
需要建议,我的输入字段事件伴随着我添加内容 returns undefined
即使变量在输入类型和脚本的 var 数据相同时也是如此
我也试过把 class="category_name" 改成 name="category_name"
我错过了什么?
您的 HTML 标签包含两个 class
属性:
<input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
^^^ here ^^^ and here
浏览器忽略了第二个,因此您的 jQuery 选择器返回空集。
您应该将 class 个属性组合成一个字符串:
<input type="text" class="form-control form-group w-100 category_name" placeholder="Category Name">
您不能重复声明 class。
你在哪里 <input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
您需要一起声明所有 class,如下所示:
<input type="text" class="category_name form-control form-group w-100" placeholder="Category Name" >
document.getElementById('submit').onclick=function(e){
e.preventDefault();
var data = {
'category_name': document.getElementsByClassName('category_name')[0].value,
'category_description': document.getElementsByClassName('category_description')[0].value,
}
console.log(data);
};
<h4 class="text-center font-weight-bold">Add New Category</h4>
<div class="form-group">
<input type="text" class="form-control form-group w-100 category_name" placeholder="Category Name" value="">
</div>
<div class="form-group">
<textarea class="form-control w-100 category_description" placeholder="Category Description" cols="50" rows="10" value=""></textarea>
</div>
<button id="submit"> Save</button>
脚本:
$(document).ready(function (){
$(document).on('click', '.add_category', function(e){
e.preventDefault();
var data = {
'category_name': $('.category_name').val(),
'category_description': $('.category_description').val(),
}
console.log(data);
});
});
形式:
<h4 class="text-center font-weight-bold">Add New Category</h4>
<div class="form-group">
<input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
</div>
<div class="form-group">
<textarea class="form-control w-100" placeholder="Category Description" class="category_description" cols="50" rows="10"></textarea>
</div>
需要建议,我的输入字段事件伴随着我添加内容 returns undefined
即使变量在输入类型和脚本的 var 数据相同时也是如此
我也试过把 class="category_name" 改成 name="category_name"
我错过了什么?
您的 HTML 标签包含两个 class
属性:
<input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
^^^ here ^^^ and here
浏览器忽略了第二个,因此您的 jQuery 选择器返回空集。
您应该将 class 个属性组合成一个字符串:
<input type="text" class="form-control form-group w-100 category_name" placeholder="Category Name">
您不能重复声明 class。
你在哪里 <input type="text" class="form-control form-group w-100" placeholder="Category Name" class="category_name">
您需要一起声明所有 class,如下所示:
<input type="text" class="category_name form-control form-group w-100" placeholder="Category Name" >
document.getElementById('submit').onclick=function(e){
e.preventDefault();
var data = {
'category_name': document.getElementsByClassName('category_name')[0].value,
'category_description': document.getElementsByClassName('category_description')[0].value,
}
console.log(data);
};
<h4 class="text-center font-weight-bold">Add New Category</h4>
<div class="form-group">
<input type="text" class="form-control form-group w-100 category_name" placeholder="Category Name" value="">
</div>
<div class="form-group">
<textarea class="form-control w-100 category_description" placeholder="Category Description" cols="50" rows="10" value=""></textarea>
</div>
<button id="submit"> Save</button>