这个问题有一个不起作用的小提琴,它可能会比下面的解释向你展示我想要做的更好的事情。http://jsfiddle.net/mjmitche/RRXnK/330/
我有一个带有可见表单标签的表单,每个标签下方都有一个按钮,用户应该能够单击该按钮以显示表单字段,该字段使用 css 隐藏。每个表单域都隐藏在类中
I love to play the piano. <-this is a form label
Click to Open Form <- this is a button that opens invisible form field
I practice five hours every day. <-this is a form label
Click to Open Form <- this is a button that opens invisible form field
这是隐藏表单字段的 css
.span5.invisiblekey {
display: none;
}
我想单击每个标签下方的按钮并显示与每个标签关联的表单字段。这是 JavaScript(使用 Backbone),但我不知道如何将按钮与每个特定的表单域链接,以便在单击每个相应的按钮时只显示一个表单域。
如果可能的话,你能帮我弄清楚在表单的 ids 和 data-attributes 中设置什么,以便 JavaScript inshowForm
方法可以显示正确的表单字段吗?
var FormView = Backbone.View.extend({
el: '#formscript',
events: {
'click .fix': 'showForm'
},
showForm: function () {
alert("form clicked");
}
});
var form_view = new FormView();
这是html。我可以设置数据属性和 ID 有一些灵活性
<div id="formscript">
<div class="row">
<p class="span3">
<label for="title">I love to play the piano.</label>
<a class="btn btn-small btn-warning fix" data-i-love-to-play-the-piano="i-love-to-play-the-piano" href="#">Click to Open Form</a>
</p>
<p class="span3">
<input class="span5 invisiblekey" data-i-love-to-play-the-piano="i-love-to-play-the-piano" id="i-love-to-play-the-piano" name="i-love-to-play-the-piano" type="text" value="">
</p>
</div>
<div class="row">
<p class="span3">
<label for="I_practice_five_hours_every_day.">I practice five hours every day.</label>
<a class="btn btn-small btn-warning fix" data-i-practice-five-hours-every-day="i-practice-five-hours-every-day" href="#">Click to Open Form</a>
</p>
<p class="span3">
<input class="span5 invisiblekey" id="i-practice-five-hours-every-day" name="i-practice-five-hours-every-day" type="text" value="I practice five hours every day.">
</p>
</div>
</div>//formscript id
更新
请注意,如果它有所不同,在我的实际(Rails)应用程序中,html 位于 ID 为 #new_group 的表单内
<form accept-charset="UTF-8" action="/entries/11/corrections" class="nifty_form" id="new_group" method="post"><div style="margin:0;padding:0;display:inline">