为什么脚本里面的判断无效?

wzh49682 2010-08-05 09:56:30
这是php文件开头的一个函数
<script>
function phpFormSubmit()
{
if(window.confirm("确认完成吗?"))
{
<?
//我在这里写了一些代码。后来发现不管是不是确定,只有一打开页面,就会执行这一部分,这个是什么原因?
?>
}
}
</script>
我学php是新手,原是学的c#,现在赶鸭子上架,有些基础的知识不知道,各位帮忙。
...全文
45 点赞 收藏 11
写回复
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzh49682 2010-08-05
大家都说到我的问题了,6楼给了个可以用,因为初学,需要指导的比较直白,呵呵。
回复
Dleno 2010-08-05
php是服务器端语言,JS是客户端语言。
你请求页面的时候,服务器会把你页面里所有的服务器端语言解析了,再将结果发送到客户端。
至于JS,都是在发送数据到客户端后,在浏览器器上执行的。
你做C#连这个都不知道?难道你做winform的??
回复
eros0405 2010-08-05
大家的回答都好积极,都是正解~
回复
kyzy_yy_pm 2010-08-05
如果直接<?php ?>的话他会直接将其解析,因为在php页面中php的优先级大于script的(呵呵,我是这么理解的,不要被我误导了啊),所以script的判断是限制不了php的,你只有通过script限制字符串来限制php,将php代码的字符串输出到网页中(因为这是服务端,所可以这么写)
回复
kyzy_yy_pm 2010-08-05
记住请用document.write()来进行script中的php操作
回复
kyzy_yy_pm 2010-08-05

//php页面中

<script>
function phpFormSubmit()
{
if(window.confirm("确认完成吗?"))
{
document.write("<?php echo '哈哈'; ?>");
}
}
phpFormSubmit();
</script>
回复
CunningBoy 2010-08-05
JavaScript的判断条件对php是无效的。
PHP会在输出HTML页面执行所有<?php ?>符号中间的代码。
回复
phper_cd 2010-08-05
php在服务器端已经运行结束了,在客户端是不可能再做操作的,你想要更改的话就用js,如果想要更改服务器上的东西那就的用ajax辅助了
回复
phper_cd 2010-08-05
这个明明就是js嘛,在<? ?>里面的东西,在服务器就已经执行了,js只是执行php输出的东西

php是服务器语言
js是客户端语言
回复
amani11 2010-08-05
js的条件企图控制php的代码怎么可能

总是知道,php在服务器端运行的,是吧,解释执行<?php ?>中间的代码
回复
gumwzg 2010-08-05
执行时, 会先编译php代码, 然后再执行js 脚本
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告