本地测试没问题,可上传到空间后js不管用了! 被调用页:2.php页头情况: <head><script src="scripts/jquery.js"><script src="../scripts/2.js" > 应该一样吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 由于是调用,按我原来的方法在本地才可以运行成功。所以如果一样的话js更不起作用了。我也按你所说的,全部用了统一的方法:如<script src="http://www.xxx.com/script/2.js">这样的,还是一样不能在空间运行2.php,2.js也能起作用。本地倒可以运行成功2.php,也能被1.php调用成功。并且在空间上也能成功单独运行2.php,都有js效果。但就是被1.php调用后就没反应了。百思不得其解!!! [Quote=引用 3 楼 hoauzs 的回复:]引用 1 楼 yanhuajin 的回复:被调用页:2.php 页头情况: <head> <script src="scripts/jquery.js"> <script src="../scripts/2.js" > 应该一样吧 由于是调用,按我原来的方法在本地才可以运行成功。所以如果一样的话js更不起作用了。 我也按你所说的,全部用了统一的方法:如 <script src="http://www.xxx.com/script/2.js">这样的,本地倒可以运行成功2.php,也能被1.php调用成功。并且在空间上也能成功单独运行2.php,都有js效果。但就是被1.php调用后就没反应了。百思不得其解!!! 楼主的调用没有说清楚:如果是include这样子的话,直接可以在1.php里加上<script src="../scripts/2.js" ></script>如果是iframe调用的话,就应该在2.php里<script src="../scripts/jquery.js"><script src="../scripts/2.js" > 可能上次没说清楚,那我重新来说一下吧:当前主目录{ 文件1.php、文件夹2(包含2.php)、文件夹scripts (包含1.js、2.js、jquery.js) } ========================1.php: 页头:<script src="scripts/jquery.js"> <script src="scripts/1.js">2.php: 页头:<script src="../scripts/jquery.js"> <script src="scripts/2.js">============================================调用方式: 1.php通过jquery的$.ajax()调用2.php -------------------------------------现在按这种方式,本地完全可以运行。但空间还是不行的。还有:我没有用iframe. 你在本地不提示错误?我觉得不可能不提示错误本身你路径已经已经不对,你本地之所以可以执行,我想可能是没什么限制的原因,服务器加了些限制,所以你就无法显示了按路径关系2.php: 页头: <script src="../scripts/jquery.js"> <script src="scripts/2.js"> 这个里面的<script src="scripts/2.js"> 路径已经明显错误了你的路径结构是根目录:文件1.php文件夹2: 2.php文件夹scripts 1.js 2.js jquery.js这样的也就是说,如果2.php也调用scripts文件夹下的文件,只能采用<script src="../scripts/jquery.js"> 或者<script src="/scripts/jquery.js"> 这样的形式不可能是<script src="scripts/jquery.js"> 这样的形式 还有1.php通过jquery的$.ajax()调用2.php ,你这2.php里面是怎样的返回值?如果没有返回值,默认返回整个页面代码,那当然要出错了 你把<script> window.onerror = function(sMessage, sUrl, sLine){ //捕捉错误 alert(sMessage + "---------" + sUrl + "-----------" + sLine); return true; } </script> 这个加到1.php最前面,看看能检测出什么错误 我按目前这样的路径在本地真的一点错误都没有。一开始我也认为这样路径应当是../scripts/2.js,但这样写,本地都不能调用成功,所以后来我改成scrips/2.js,这样才可以正常运行。调用2.php后,2.php返回的是这个页面里的一个div的文本内容,不过基本上算是整个页面了。不过我所有的项目都是通过这种方式在index.php里调用其他页面,而且形式都差不多一样。其他的都没问题。我加了你给的这个错误检测代码,什么也没有提示。还有,我用的是000webhost的免费空间。不知道有没有什么限制,不过好象在网页上没看到它提示有什么限制的。我之前做的一个都可以在它上面运行顺利的。 这是1.js的调用部分: /****************加载留言板**********************/ $("#messages").click(function(){ $("#about_sub").slideUp(1000); $.ajax({ type:'POST', url:'messages/messages.php', ifModified:true, data:$("#main").val(), success:function(data){ $("#msg").html(data).fadeIn().siblings().hide(); } }) })这是2.js的提交部分/***************提交表单************/.....上面还有验证表单部分$("#submit").click(function(){ $(".required").trigger('blur'); $("#sub_msg").remove(); var numWarning=$('.warning').length; if(numWarning){ var errorFieldList=[]; $('.warning').each(function(){ errorFieldList.push($(this).parents("td").find("span:first").text()); }) $('<div></div>').attr({'id':'sub_msg','class':'sub_msg'}) .append("<font size='2px'>以下内容输入的数据"+numWarning+"处不合法:</font><br />") .append("<font color=maroon size='2px' >•"+errorFieldList.join("<br />•")+"</font>") .appendTo('#caution').fadeIn(5000).fadeOut(5000); return false; }else{ $.ajax({ type:"POST", url:"messages/receivemsg.php",//写入数据库 data:"username="+$("#username").val()+"&phone="+$("#phone").val()+"&email="+$("#email").val()+"&msgcontent="+$("#msgcontent").val() }) alert("留言成功,谢谢!") $.ajax({//重新调用messages.php,相当于刷新,即时显示 type:'POST', url:"messages/messages.php", ifModified:true, success:function(url){ $("#msg").html(url).fadeIn().siblings().hide(); } }) } }) ie的话开启脚本调试,ff装个firebug 原因终于找到了,是我在2.js里没有将$(document).ready(function(){})这个表头去掉。不过,也证明了我的结构是没问题的。现在空间运行也没问题了。感谢以上朋友的帮助!!特别感谢chinmo朋友!~ 请教以下效果是如何实现? php trim用法求解 高手进!!!!!!! php 修改上传的图片 虚心请教设置apache虚拟目录问题 单字模糊查询问题!! session目录/tmp大小超过1G!怎么回事? php中关于文本框页面跳转的问题! HTTP原理上,能否只返回HTTP状态码,不返回内容 怎么用PHP代码生成PHP 问题特急php显示问题utf-8编码。用IE看确以gb2312显示。 <tr><td><input type="radio" name="q" value="<?php echo $oinfo[op_name]?>"/></td></tr>这个错在哪?
由于是调用,按我原来的方法在本地才可以运行成功。所以如果一样的话js更不起作用了。
我也按你所说的,全部用了统一的方法:如<script src="http://www.xxx.com/script/2.js">这样的,还是一样不能在空间运行2.php,2.js也能起作用。本地倒可以运行成功2.php,也能被1.php调用成功。并且在空间上也能成功单独运行2.php,都有js效果。但就是被1.php调用后就没反应了。百思不得其解!!!
引用 1 楼 yanhuajin 的回复:
被调用页:2.php
页头情况: <head>
<script src="scripts/jquery.js">
<script src="../scripts/2.js" >
应该一样吧
由于是调用,按我原来的方法在本地才可以运行成功。所以如果一样的话js更不起作用了。
我也按你所说的,全部用了统一的方法:如 <script src="http://www.xxx.com/script/2.js">这样的,本地倒可以运行成功2.php,也能被1.php调用成功。并且在空间上也能成功单独运行2.php,都有js效果。但就是被1.php调用后就没反应了。百思不得其解!!!
楼主的调用没有说清楚:如果是include这样子的话,直接可以在1.php里加上<script src="../scripts/2.js" ></script>
如果是iframe调用的话,就应该在2.php里
<script src="../scripts/jquery.js">
<script src="../scripts/2.js" >
可能上次没说清楚,那我重新来说一下吧:当前主目录{ 文件1.php、文件夹2(包含2.php)、文件夹scripts (包含1.js、2.js、jquery.js) }
========================
1.php:
页头:<script src="scripts/jquery.js">
<script src="scripts/1.js">
2.php:
页头:<script src="../scripts/jquery.js">
<script src="scripts/2.js">
============================================
调用方式:
1.php通过jquery的$.ajax()调用2.php
-------------------------------------
现在按这种方式,本地完全可以运行。但空间还是不行的。
还有:我没有用iframe.
2.php:
页头: <script src="../scripts/jquery.js">
<script src="scripts/2.js">
这个里面的<script src="scripts/2.js"> 路径已经明显错误了
你的路径结构是
根目录:
文件1.php
文件夹2:
2.php
文件夹scripts
1.js
2.js
jquery.js
这样的
也就是说,如果2.php也调用scripts文件夹下的文件,只能采用
<script src="../scripts/jquery.js"> 或者<script src="/scripts/jquery.js"> 这样的形式
不可能是<script src="scripts/jquery.js"> 这样的形式
<script>
window.onerror = function(sMessage, sUrl, sLine){ //捕捉错误
alert(sMessage + "---------" + sUrl + "-----------" + sLine);
return true;
}
</script>
这个加到1.php最前面,看看能检测出什么错误
我按目前这样的路径在本地真的一点错误都没有。一开始我也认为这样路径应当是../scripts/2.js,但这样写,本地都不能调用成功,所以后来我改成scrips/2.js,这样才可以正常运行。调用2.php后,2.php返回的是这个页面里的一个div的文本内容,不过基本上算是整个页面了。不过我所有的项目都是通过这种方式在index.php里调用其他页面,而且形式都差不多一样。其他的都没问题。我加了你给的这个错误检测代码,什么也没有提示。还有,我用的是000webhost的免费空间。不知道有没有什么限制,不过好象在网页上没看到它提示有什么限制的。我之前做的一个都可以在它上面运行顺利的。
这是1.js的调用部分:
/****************加载留言板**********************/
$("#messages").click(function(){
$("#about_sub").slideUp(1000);
$.ajax({
type:'POST',
url:'messages/messages.php',
ifModified:true,
data:$("#main").val(),
success:function(data){
$("#msg").html(data).fadeIn().siblings().hide();
}
})
})
这是2.js的提交部分
/***************提交表单************/
.....上面还有验证表单部分
$("#submit").click(function(){
$(".required").trigger('blur');
$("#sub_msg").remove();
var numWarning=$('.warning').length;
if(numWarning){
var errorFieldList=[];
$('.warning').each(function(){
errorFieldList.push($(this).parents("td").find("span:first").text());
})
$('<div></div>').attr({'id':'sub_msg','class':'sub_msg'})
.append("<font size='2px'>以下内容输入的数据"+numWarning+"处不合法:</font><br />")
.append("<font color=maroon size='2px' >•"+errorFieldList.join("<br />•")+"</font>")
.appendTo('#caution').fadeIn(5000).fadeOut(5000);
return false;
}else{
$.ajax({
type:"POST",
url:"messages/receivemsg.php",//写入数据库
data:"username="+$("#username").val()+"&phone="+$("#phone").val()+"&email="+$("#email").val()+"&msgcontent="+$("#msgcontent").val()
})
alert("留言成功,谢谢!")
$.ajax({//重新调用messages.php,相当于刷新,即时显示
type:'POST',
url:"messages/messages.php",
ifModified:true,
success:function(url){
$("#msg").html(url).fadeIn().siblings().hide();
}
})
}
})
不过,也证明了我的结构是没问题的。现在空间运行也没问题了。
感谢以上朋友的帮助!!
特别感谢chinmo朋友!~