jquery - Jquery Form提交功能未触发和调试未触发
问题描述
我一直在努力弄清楚随着时间的推移我在一个旧的 ajax 请求中打破了什么,只是将结果提取到一个 div 中,而不是转到表单提交的页面。Jquery $ 已初始化但此功能不会触发,甚至在文档准备就绪时添加了未触发的警报?
// this is the id of the form
$(document).ready(function() {
alert("ready");
$("#rewardsRoll").submit(function(e) {
alert("roll");
var form = $(this);
var url = form.attr('action');
$.ajax({
type: "POST",
url: url,
data: form.serialize(),
success: function(data) {
$('#RewardsDiceDiv').html(data);
}
});
return false;
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="RewardsDiceDiv">
<div style="min-height:50px;text-align:center">
<form id="rewardsRoll" method="post" action="https://www.allfreechips.com/phpBB2/../dicerewards.php">
<input type="hidden" name="securitytoken" value="tttt" />
<input type="hidden" name="s" value="" />
<input type="submit" class="button" name="submit" value="Use one of your 9958 AFC Rewards"></form>
</div>
<div class="dice-container">
<div class="dice-item">
// show dice...
</div>
解决方案
尝试这个:
$("#rewardsRoll").submit(function(e) {
e.preventDefault();
alert("roll");
var form = $(this);
var url = form.attr('action');
$.ajax({
type: "POST",
url: url,
data: form.serialize(),
success: function(data) {
$( '#RewardsDiceDiv' ).html( data );
}
});
return false;
}
推荐阅读
- html - 如何将verbatimTextOutput的字体系列更改为与Shiny和Shinydashboard中的输入相同?
- assembly - 如何修补 x64 程序集中的函数以始终返回 true
- matlab - Matlab:创建数组向量
- python-3.x - 如何仅在字典中查找函数名称?
- ios - 在 React Native 项目中哪里可以找到缺失的框架文件?
- php - 如何修复 PHP 中的“标头已发送”错误
- r - 通过在 R 中的每一轮添加一个新的子集变量来重复子集函数
- java - 如何在 Windows 7 32 位上安装 InlelliJ IDEA?
- powerbi - DAX AVERAGEX 包括 0 表示总平均值
- python - 从蓝图和材质中分离静态网格体