下面的代码是从我的数据库创建的,因此它的多个具有相同的classes
名称,但内容不同。
我需要做的是,当点击带有class = 'config'
的按钮时,我需要获得['value','type','info']
div this
的值this
class = config
。
我将如何继续这个?
$(".config").click(function(){
var id = $(this).attr('id');
});
任何提示??
HTML
<div class="mws-form-row bordered">
<label class="mws-form-label"><?php echo SaleAdmin_Engine::getConfigName($this->result[0]['config_name']) ; ?></label>
<div class="mws-form-item">
<b>Value</b> <input type="text" class="value required large" value="<?php echo $this->result[0]['config_value']; ?>">
<b>Type</b> <input type="text" class="type required large" value="<?php echo $this->result[0]['config_type']; ?>">
<b>Info</b> <textarea rows="" cols="" class="info required large"><?php echo $this->result[0]['config_info']; ?></textarea>
</div>
<button class="config btn btn-inverse btn-small" rel="<?php echo $this->result[0]['config_id']; ?>" type="button">Save</button>
</div>
答案 0 :(得分:2)
如果我理解你这样的事情应该对你有用
$(".config").click(function(){
var form1 = $(this).parent();
var value = form1.find(".value").value();
var type = form1.find(".type").value();
var info = form1.find(".info").value();
});
答案 1 :(得分:1)
选择器中的this
引用了没有您要查找的元素的按钮。为了获得这些元素,您需要获得与该按钮相关的父表单。
$(document).ready(function(){
$(".config").click(function(){
var form1 = $(this).parent();
var value = form1.find(".value").val();
var type = form1.find(".type").val();
var info = form1.find(".info").val();
});
});
这是一个有效的jsfiddle。
答案 2 :(得分:0)
您可以使用jQuery类选择器获取一个集合,然后使用jQuery map函数一次性迭代它们来构建您的值。
$(".config").click(function(){
//Get all items with required class
var resultArray = $.map($(".required"), function(val){
return val.value;
});
console.log(resultArray);
});
在此fiddle
中查看此操作