在javascript中动态更改和检查变量
Dynamically change and check variable in javascript
我有以下代码:
JS:
var flag = 0;
funct(){//makes changes on css
flag=0;}
HTML:
<form onsubmit="if(flag==1)return funct()">
PHP:
if(somethingIsOK){
echo "<script>flag=1;</script>"; //should use new css which comes with funct()
}else{//do something else with keeping the existing css}
我想要这个结构,但我不能像我想的那样使用变量flag
。我尝试过使flag
静态,但它不起作用。
使用隐藏字段设置/取消设置标志
<input type="hidden" name="flag" id="flag" value="1" />
javascript
var flag = document.getElementById('flag').value;
funct(){//makes changes on css
document.getElementById('flag').value=0;
}
您不能在PHP和JS中轻松使用相同的变量。但是,您可以使用名称标志和变量的值创建一个<input type="hidden">
,然后在PHP和JS中读取它。
使用这样的构造是个坏主意,但如果你真的想使用一些全局变量,你可以将其分配给窗口对象属性,即:
window.flag = 0;
并在任何需要的地方使用这个变量(window.flag)。
我不喜欢你这样做,但答案是在标志之前删除var
,使其全局化:
flag = 0;
证明
编辑
- 如果你想阻止表单提交,你的
funct()
必须是return false;
也许你试试
if(somethingIsOK){ echo "<script type="text/javascript">flag=1;</script>"; }else{ echo "<script type="text/javascript">flag=0;</script>"; }
再说一遍:像
var flag = 0;
funct(){//makes changes on css
flag=0;}
尝试
var flag = 0;
function funct(){ // <<<<< function
//makes changes on css
flag=0;}
相关文章:
- 如何在JavaScript中检查变量是否为null和/或未定义
- 检查变量是否为字符串的简单方法
- JavaScript:检查变量是否等于两个或多个值之一的简单方法
- Selenium-检查变量中的字符
- 检查变量并将它们添加到逗号分隔的列表中
- 通过字符串形式的名称检查变量是否存在于本地作用域内
- 检查变量是否大于某物,但不是未定义的
- jQuery - 检查变量是否为 dom 元素
- 检查变量是否未定义不起作用
- 如何在 Javascript 中检查变量是否是数组(noesis.Javascript)嵌入在C#中
- Javascript 检查变量
- 如何检查变量是否为节点
- JavaScript 函数,用于检查变量是否存在以避免错误
- 如何在 JavaScript 中检查变量类型
- 这是检查变量是否被定义的最佳方法,而不是 null 并等于 “” 或其他任何内容
- 我可以创建一个承诺来检查变量是否设置为角度吗?
- 检查变量是否为 SVG.js 元素实例
- 表单点击功能可在提交前检查变量
- 如何在 JavaScript 中检查变量是局部变量还是全局变量
- JavaScript:检查变量或对象是否存在