jQuery表单提交按引用表单
jQuery form submit as per referenced form
下面是一个表单示例。运行良好,没有任何问题。
<form action="http://example.com/add_to_cart" class="form-horizontal" method="post" accept-charset="utf-8"></form>
<input type="hidden" name="cartkey" value="">
<input type="hidden" name="id" value="10">
<button type="submit" value="submit"> Add to Cart</button>
<form action="http://example.com/add_to_cart" class="form-horizontal" method="post" accept-charset="utf-8"></form>
<input type="hidden" name="cartkey" value="">
<input type="hidden" name="id" value="3">
<button type="submit" value="submit"> Add to Cart</button>
<form action="http://example.com/add_to_cart" class="form-horizontal" method="post" accept-charset="utf-8"></form>
<input type="hidden" name="cartkey" value="">
<input type="hidden" name="id" value="5">
<button type="submit" value="submit"> Add to Cart</button>
现在我必须创建相同的表单,但需要做一些修改。我的标记是这样的
<form action="http://example.com/add_to_cart" class="form-horizontal" method="post" accept-charset="utf-8">
<button type="submit" value="submit" data-value="10" data-name="id">Try Now</button>
<button type="submit" value="submit" data-value="3" data-name="id">Try Now</button>
<button type="submit" value="submit" data-value="5" data-name="id">Try Now</button>
</form>
To submit the form I have used this jQuery.
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('button[type=submit]').click(function() {
var Id = jQuery(this).attr('data-value');
var Name = jQuery(this).attr('data-name');
alert(Name);
})
});
</script>
但是从这一点来看,我不知道下一步该做什么。所以有人能好心地告诉我如何提交与上面使用的标记相同值的jquery表单?
如果你愿意,我可以修改我的标记。
首先,你的HTML不正确。将输入移到中:
<form action="..." class="form-horizontal" method="post" accept-charset="utf-8">
<input type="hidden" name="cartkey" value="">
<input type="hidden" name="id" value="10">
<button type="submit" value="submit"> Add to Cart</button>
</form>
您可以有任意数量的以上形式。在JavaScript方面,您必须捕获所有表单的submit
事件。在提交处理程序中,this
将是提交的表单。
$(document).ready(function () {
$("form").on("submit", function () {
$.ajax({
type: "POST",
url: formUrl,
data: $(this).serializeArray(),
success: function (data) {
/* handle success */
},
error: function (data) {
/* handle error */
},
dataType: "json" // remove this if the server doesn't send json data
});
return false; // prevent default browser behavior
});
});
注意$(this).serializeArray()
-这返回一个像这样的数组:
[{
name: "some-input-name",
value: "some-input-value"
}, ...
此外,您还可以检查return false
的用法:When and why to 'return false'在JavaScript中?
相关文章:
- 在表单提交按钮的点击事件中调用函数时发生引用错误
- 如何在加载表单时获得对Builder配置的Jenkins果冻脚本中表单元素的引用
- 使用ajax在coldfusion中引用表单值
- Dynamics CRM 2015:如何获得我创建的Web资源按钮,以引用我添加到表单中的Javascript库中的函数
- 如何在表单中引用跨度元素
- 表单验证返回引用错误
- CRM 2013-引用子记录的Javascript表单警报(onload事件)
- 使用javascript引用表单元素
- 引用在表单容器中为空
- 从模块内部引用特定的表单元素
- 页面重定向,在表单提交时传递引用 URL
- ExtJS MVC 表单引用
- 引用分配给 jQUERY 中变量的表单
- 如何在 Meteor 中添加与自动表单的关系或引用
- 在输入表单标记中使用 onclick 属性时出现 JavaScript 未捕获的引用错误
- AngularJS验证引用具有变量名称的表单对象
- 在iFrame(不同域)表单隐藏字段中抓取父级引用
- angular服务器端验证,如何从对象引用中找到表单元素
- Javascript引用表单,更改action url,然后http get
- Php联系人表单引用错误