【发布时间】:2018-04-16 18:08:01
【问题描述】:
$('form input, textarea').each(function(){
console.log($(this).prop('tagName'))
})
我不知道为什么,但上面的代码不适用于复选框和收音机。我得到文本或数字或电子邮件类型的输入,但没有复选框或收音机,尽管事实上也是输入。有人吗?
编辑 - 示例代码。 jQuery 看到 teamSize 和 projectStack,但没有看到 projectStage:
<form @submit.prevent="validateForm">
<div class="form-group">
<label for="whyWorkOnProject">Why would someone want to work on the project?</label>
<textarea name="whyWorkOnProject" v-model="whyWorkOnProject" rows="3" type="text" placeholder="Please describe why would someone want to work on the project" class="form-control"></textarea><small class="invalid-feedback help-block"></small>
</div>
<div class="form-group">
<label for="teamSize">How many people work on project?</label>
<input name="teamSize" type="number" placeholder="Enter number" v-model="teamSize" class="form-control"/><small class="invalid-feedback help-block"></small>
</div>
<div class="form-group">
<label for="projectStage">What stage is project at?</label>
<div class="form-check">
<input type="radio" name="projectStage" v-model="projectStage" value="greenfield" checked="checked" class="form-check-input"/>
<label class="form-check-label">greenfield</label>
</div>
<div class="form-check">
<input type="radio" name="projectStage" v-model="projectStage" value="ongoing-development" class="form-check-input"/>
<label class="form-check-label">ongoing development</label>
</div>
<div class="form-check">
<input type="radio" name="projectStage" v-model="projectStage" value="maintenance" class="form-check-input"/>
<label class="form-check-label">maintenance</label>
</div>
</div>
<div class="form-group">
<label for="projectStack">What is the project techstack?</label>
<textarea name="projectStack" v-model="projectStack" rows="3" type="text" placeholder="Please describe technology stack" class="form-control"></textarea><small class="invalid-feedback help-block"></small>
</div>
<div class="form-group">
<label for="projectMethodology">What stage is project at?</label>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="issue tracking tool" class="form-check-input"/>
<label class="form-check-label">issue tracking tool</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="knowledge repository" class="form-check-input"/>
<label class="form-check-label">knowledge repository</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="code reviews" class="form-check-input"/>
<label class="form-check-label">code reviews</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="pair programming" class="form-check-input"/>
<label class="form-check-label">pair programming</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="unit testing" class="form-check-input"/>
<label class="form-check-label">unit testing</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="integration testing" class="form-check-input"/>
<label class="form-check-label">integration testing</label>
</div>
<div class="form-check">
<input type="checkbox" name="checkbox" v-model="projectMethodology" value="Agile/Lean/Waterfall" class="form-check-input"/>
<label class="form-check-label">Agile/Lean/Waterfall</label>
</div>
</div>
<button type="submit" class="btn btn-success">Submit</button>
</form>
【问题讨论】:
-
您还需要分享您的 html 以找出解决方案,很可能您的复选框不在表单内..
-
抱歉,忘记添加了 - 更新了我的问题(它是用哈巴狗写的)
-
仅供参考,当我通过 pughtml.com 将您的哈巴狗转换为 html 时,
<form>元素在内容之前关闭。 -
好的,我从 pug 转换为 html 只是为了确保它更易于阅读
-
这只哈巴狗是否相关(从未使用过)?似乎可以正常工作,就像 html jsfiddle.net/xpvt214o/136063