我想使用一个按钮创建一个表单,询问用户输入并将其发送到php文件而不刷新,但在我将表单附加到html文件并尝试提交之后,java函数没有运行。
我用来附加表单的函数:
function reporterror(){
if (document.getElementById("report")){
console.log("Still have report");
}else{
$("<form id='report' action='report.php' method='post'><div ><h2 style='text-align:center;'>Report Error</h2><h3>Description:</h3><textarea rows='10' cols='60' name='report' id='description' placeholder='No more than 500 words' style='border-radius:10px;border:1px solid #000;'></textarea><input type='submit' style='border-radius:5px;'></input><input type='button' onclick='reportclose()' value='Close' style='border-radius:5px;'></input></div></form>").appendTo("#content");
}
};
没有运行的功能:
$(document).ready(function () {
$("#report").on("submit",function(event){
event.preventDefault();
if (document.getElementById("description").value==""){
$(".warning").remove();
$("#description").after("<p class='warning' style='color:red'>Description is required</p>");
console.log("yes");
}else{
$.ajax({
type:"POST",
url:"report.php",
data:$("#report").serialize(),
success:function(){
console.log("Great");
document.getElementById("report").innerHTML="<h2>Thank You for helping us to improve!</h2><br><p>Your message have been successfully sented to this awesome website!</p><input type='button' onclick='reportclose()' value='Close' style='border-radius:5px;'></input>";
}
})
}
});
})
这就是它现在的样子:http://cs20p.site11.com/
答案 0 :(得分:0)
尝试更改此行$("#report").on("submit",function(event){
到$(document).on("submit", ".report", function(event){
和$("<form id='report'
到$("<form class='report' id='report'
出现问题是因为您使用的是id而不是class。 Id元素只能是一个