为什么我在PHP中嵌入的jQuery不能正常执行?
基本上,如果没有设置name变量,我希望它回显一个脚本,将其更改为以红色突出显示。为什么这样不行 这里的格式更适合阅读:为什么我在PHP中嵌入的jQuery不能正常执行?,php,javascript,jquery,html,Php,Javascript,Jquery,Html,基本上,如果没有设置name变量,我希望它回显一个脚本,将其更改为以红色突出显示。为什么这样不行 这里的格式更适合阅读: if ($_POST["name"] == "") { array_push($errors, "Your PixelPal needs a name!"); echo "<script>\$('#name').css({ 'border': 'none', 'box-shadow': 'inset 0px 0px 5px 3px rgba(12
if ($_POST["name"] == "") {
array_push($errors, "Your PixelPal needs a name!");
echo "<script>\$('#name').css({ 'border': 'none', 'box-shadow': 'inset 0px 0px 5px 3px rgba(128, 128, 128, 0.3), 0px 0px 10px rgba(255, 0, 0, 1)' });</script>";
}
如果被推到页面上,JavaScript不应该立即执行吗?JQuery脚本作用于页面上已经存在的元素,如果在元素id=name之前执行此脚本,则需要将脚本添加到$document.ready语句中
if ($_POST["name"] == "") {
array_push($errors, "Your PixelPal needs a name!");
echo "<script>\$('#name').css({
'border': 'none',
'box-shadow': 'inset 0px 0px 5px 3px rgba(128, 128, 128, 0.3), 0px 0px 10px rgba(255, 0, 0, 1)'
});</script>";
}
你为什么要用JavaScript来做这件事?您只是基于服务器端变量设置CSS。当你创建那些HTML元素并在那里添加CSS内联时,只需检查这些。你在页面中的哪里重复了这些?它可能在文档创建之前运行loaded@AgentConundrum我不明白。“你能说得更清楚一点吗?”道格史密斯肯定。您添加的javascript所做的唯一一件事就是向某些元素添加CSS样式。在创建HTML时,只需向元素添加一个style属性,而不是在JavaScript中执行。例如,尝试echo;
if ($_POST["name"] == "") {
array_push($errors, "Your PixelPal needs a name!");
echo "<script>
\$(document).ready({
\$('#name').css({
'border': 'none',
'box-shadow': 'inset 0px 0px 5px 3px rgba(128, 128, 128, 0.3), 0px 0px 10px rgba(255, 0, 0, 1)'
});
});</script>";
}