以下代码应该在 content-container
div中加载 innerStuff.html
。然后, innerStuff.html
中另一个名为 submit_entry()
的脚本用于提交 innerStuff.html
的表单。
我得到了什么:单击按钮时, innerStuff.html
中的 submit_entry()
(通过AJAX加载) )将在任何浏览器上执行,除了iOS上的那些。
据我所知,这是我唯一的问题可以在iOS上遇到。当使用任何其他平台时,该功能可以使用。


 index.html
//上面的普通HTML内容
< div id =“content-container”>< / div>
 //普通HTML内容
< script>& #xA; getStuff = function(filename){
 $ .ajax({
 type:“POST”,
 url:“https://website.com/ajax/",
data:{
'name':filename& #xA;},
成功:函数(数据){
 $('#content-container')。animate({opacity:'0'},250,function(){$('# content-container')。html(data);});
 $('#content-container')。animate({opacity:'1'},250);
}
 });
};

 getStuff( 'innerStuff'); //获取innerStuff.html
< / script>



 innerStuff.html
< div id =“form-container”>
 < form enctype =“multipart / form-data”method =“post”id =“form”>
 //这里的普通表单(> 5个元素)
 < /形式>
 < button id =“submit-btn”onclick =“javascript:submit_form();”>提交< / button>
 <脚本>
 form ['2']。value =“Something”; //默认值(表单有> 5个元素,是网站上唯一的表单)
 submit_form = function(){
提醒(“提交表格。请稍候......”);
 $ .ajax({
 url:“https://website.com/submitform/",
type:”POST“,// https method
 data:new FormData(form),& #xA; contentType:false,
 processData:false,

 //处理成功的响应
成功:function(json){
 if(json ['result' ] =='错误'){
 alert(json);
}
 else {
 alert('Submission successfull!');
}
 },

 //处理不成功的响应
错误:函数(xhr,errmsg,err){
 if(xhr.status == 0){
警告(“我们似乎无法与服务器通话。\ n请重新连接并重试。”);
}
否则{
警告(“哎呀!我们遇到过错误:“+ xhr.status +”\ n详细信息:“+ xhr.responseText);
 }
 }
 });
 };
 < /脚本>
< / DIV>
 代码>


答案 0 :(得分:0)
尝试将按钮光标设置为这样的指针。
#submit-btn {cursor: pointer;}
听起来很奇怪我知道,但是iOS上有一些奇怪的错误,包括onClick();
答案 1 :(得分:0)
试试这个:
<script>
getStuff = function(filename){
$.ajax({
type: "POST",
url: "https://website.com/ajax/",
data: {
'name': filename
},
success : function(data){
$('#content-container').animate({opacity: '0'}, 250, function(){
$('#content-container').html(data);
/* Add this */
var arr = $('#content-container')[0].getElementsByTagName('script')
for (var n = 0; n < arr.length; n++)
eval(arr[n].innerHTML)
});
$('#content-container').animate({opacity: '1'}, 250);
}
});
};
getStuff('innerStuff'); //Gets innerStuff.html
</script>