Javascript 不带大括号的if语句上的多个语句

Javascript 不带大括号的if语句上的多个语句,javascript,html,if-statement,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;" 我不能使用大括号括住这两条语

我在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; \"";

我试过使用&,但不起作用。任何建议,谢谢

首先,这是一种不好的做法。
但是如果返回false,您可以添加replicate,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
//一些php
//然后关上它
?>

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

未经测试,您是否尝试过反转引号(将双引号转换为单引号,将单引号转换为双引号)?PHP对待使用双引号创建的字符串与使用单引号创建的字符串不同

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

“我不能用大括号括住这两条语句,因为我在PHP中找不到任何关于将大括号输出到字符串的信息(如果找到了,输出将在第一个大括号后停止)”-难道你不能只打印“{…}”打印大括号吗?

有什么具体的原因不使用单击方法吗??因为如果你不使用任何标准的话,你会弄乱你的代码。这行代码是在引用的PHP字符串中生成的吗?我不得不把它保留一段时间,否则我就快要说脏话了。据我所知,在PHP中没有理由不能使用{和}字符。请更新您的问题,显示您获得的确切输出(来自浏览器源)?我的直觉是,你的模板正在解析字符串,并试图用括号做些什么。是的,我发现这是模板引擎。在html模板中,您使用{CONTENT}作为占位符,因此花括号是不允许的。@Lock您介意我修改我的答案以反映“模板解析”吗?PHP与列出的语句无关他用PHP标记了问题,并在问题中提到了PHP,因此我相信HTML是通过PHP创建的,因此我认为是引用引起了问题。想取消我的反对票吗?这些可怜的家伙只是随意地把他们的问题贴上标签:)在阅读问题时,必须利用他们的经验(如果有的话),而不是盲目地相信标签。此语句不能位于PHP引号字符串内。所以,颠倒引号是没有意义的。好吧,我来上钩。。。确切地说,为什么它不能在PHP引号字符串中?到底是什么表明这个HTML不是通过PHP引号字符串创建的?作为一个“可怜的傻瓜”,我对我们都不知道如何使用电脑表示异议system@freefaller这是完全正确的。问题明确指出这个JavaScript是由PHP输出的。PHP确实与此有关,因为PHP输出JavaScript所属的字符串:而不是在变量中添加大括号时,因为PHP将大括号视为某种语言构造。如果我能逃逸大括号,我会的,但我在互联网上看不到任何关于在PHP中逃逸大括号的信息,这样它就会将大括号输出到实际的stringPHP中。PHP只在它的标记中寻找语言结构。因此,不要在PHP字符串中编写JS。只需关闭yopur PHP标记并按原样编写JS,就像它只是一个纯HTML页面一样。请看编辑后的答案“我写不出来”是纯HTML,因为该系统使用tempate引擎,该引擎将变量输出到HTML模板上。基本上,所有HTML都是PHP变量($content[“PREPEND”)OMG的一部分,将JS编写为模板的一部分,而不是PHP代码!否则使用这样的“模板引擎”将毫无意义。我希望尽可能避免这种情况,因为页面的页眉不是很容易访问的
onclick='javascript: if ( days.value == "" ) { alert("Please select at least 1 day to schedule this report"); return false; }'