我的表单标签设置如下:
<form data-id="213" method="post" onsubmit="javascript: startAjax(); return false;">
<input type="submit" value="submit">
</form>
当我提交表单时,我正在运行ajax脚本来验证一些内容。如何在我的ajax脚本中访问“data-id”属性。
我尝试了$(this).data(“id”)但它返回undefined。有人知道怎么做吗?
感谢。
答案 0 :(得分:1)
您需要将this
传递给startAjax()
函数
<form data-id="213" method="post" onsubmit="javascript: startAjax(this); return false;">
<input type="submit" value="submit">
</form>
JS
function startAjax(obj){
var id = $(obj).data('id')
//rest of your code
}
因为你已经在使用jQuery了。然后你应该使用.submit()
$("form").submit(function (event) {
var id = $(this).data('id');
event.preventDefault();
});
答案 1 :(得分:0)
你试过吗
$(this).attr('data-id')
答案 2 :(得分:0)
您可以将$(this)
传递给startAjax()
函数(请参阅@Satpal答案)或使用jquery事件(这要好得多):
<强> HTML:强>
<form data-id="213" method="post" id="my-form">
<input type="submit" value="submit">
</form>
<强> JS:强>
$(document).ready(function() {
$("#my-form").submit(function(e) {
alert($(this).data('id');
e.preventDefault();
});
});