关于if语句的多个语句没有花括号

时间:2012-04-23 07:55:43

标签: javascript html if-statement

我在我的html中使用onclick函数(所以不是方法,而是html按钮onclick事件中的javascript代码本身)。

如何在IF语句后的1行中添加2个语句,这些语句没有花括号括起来。

我想做这样的事情

onclick="javascript: if ( days.value == '' ) alert('Please select at least 1 day to schedule this report') && return false;" 

我无法使用花括号括起两个语句,因为我无法找到有关在PHP中输出花括号的任何信息(如果我这样做,输出会在第一次卷曲后停止撑)

我的PHP看起来像这样:

$content["PREPEND"].= " onclick=\"javascript: if ( days.value == '' ) alert('Please select at least 1 day to schedule this report') && return false; \"";

我尝试使用&&,但这不起作用。任何建议都赞赏!

5 个答案:

答案 0 :(得分:2)

Javascript代码与PHP代码无关。 你可以使用你想要的任何大括号。

如果花括号出现问题 - 你只是把它们放错了方向。 你必须纠正你的大括号,而不是寻找一些丑陋的方法来避免它们。

纠正错误在编程中是一项非常简单的任务,你知道。

如果确实PHP代码确实干扰了你的JS(我不能确定你在你的问题中没有发布任何一个PHP运算符),只需关闭PHP模式并按原样编写你的JS,就好像它是只是一个纯HTML页面:

//some php
// then close it
?>
<a href="#" onclick='javascript: if ( days.value == "" ) { alert("Please select at least 1 day to schedule this report"); return false; }'>
<?php
// open PHP back

如果你需要JS中的一些PHP值 - 再次打开PHP:

//some php
$var = "test";
// then close it
?>
<a href="#" onclick='javascript: if ( days.value == "<?=$var?>" ) { alert("Please select at least 1 day to schedule this report"); return false; }'>
<?php
// open PHP back

答案 1 :(得分:1)

如果没有测试,你是否试过反转引号(将双打变成单曲,单曲变成双曲)? PHP将使用双引号创建的字符串与具有单引号的字符串区别对待

onclick='javascript: if ( days.value == "" ) { alert("Please select at least 1 day to schedule this report"); return false; }' 

答案 2 :(得分:0)

首先是一种不好的做法。 但你可以添加复制if if返回false

答案 3 :(得分:0)

将两个语句放入javascript函数中,然后在if语句中调用该函数。

答案 4 :(得分:0)

“我不能使用花括号括起两个语句,因为我找不到任何关于在PHP中输出花括号到大字符串的信息(如果我这样做,输出在第一个大括号后停止)” - 你不能只打印'{...}'打印大括号吗?