我有一个带有下拉列表(%ul.dropdown
)和文本字段(%input
)的表单。下拉列表中有一系列书籍。每当点击下拉列表中的项目时,书名将出现在文本字段中(我在代码示例中未包含的Javascript中执行此操作)。如果我提交表单,我希望提交项目的ID,而不是标题本身。我可以通过搞乱隐藏字段和jQuery来实现这一点,但是,如果有一种简单而优雅的方法可以做到这一点会更好。有什么想法吗?感谢
代码(以haml为单位):
.input-group
%input.form-control#book-selected{ type: "text", placeholder: "Please, select" }/
.input-group-btn
%button.btn.button-transparent.dropdown-toggle{"data-toggle" => "dropdown", type: "button"}
.icon-arrow-down
%ul.dropdown-menu.pull-right#books-list
- @books.each do |book|
%li
%a.book-select{ href: "#", 'data-book-id' => book.id }= book.name
答案 0 :(得分:0)
以下是提交侦听器的一些示例:
Submit Event Listener for a form
Use submit event listener when form is submitted via inline JavaScript?
有人提出了类似的问题here。
代码示例:
$('#myform').submit(function(event) {
$('#book-selected').val( currentBookId );
this.submit();
});