Javascript 选择此选项时运行脚本

Javascript 选择此选项时运行脚本,javascript,jquery,Javascript,Jquery,所以我有一个计算器脚本,它以插入记录的形式进行一些计算。 为了运行,我希望它检查选择下拉菜单中的选项,因为我只希望它在通过下拉菜单选择特定项目时工作。这是我的剧本 <script type="text/javascript"> function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=p

所以我有一个计算器脚本,它以插入记录的形式进行一些计算。 为了运行,我希望它检查选择下拉菜单中的选项,因为我只希望它在通过下拉菜单选择特定项目时工作。这是我的剧本

<script type="text/javascript">
function MM_findObj(n, d) { //v4.01
var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function KW_getVal(o){ //v1.2
var retVal="0";if (o.type=="select-one")
{retVal=(o.selectedIndex==-1)?0:o.options[o.selectedIndex].value;}
else if (o.length>1){for (var i=0;i<o.length;i++) if (o[i].checked) retVal=o[i].value;
} else if (o.type=="checkbox") {retVal=(o.checked)?o.value:0;} else {
retVal=Number(o.value)}return parseFloat(retVal);
}

function KW_calcForm() { //v1.2
var str="",a=KW_calcForm.arguments; for (var i=3;i<a.length;i++)
str+=(a[i].indexOf("#")==-1)?a[i]:KW_getVal(MM_findObj(a[i].substring(1)));
t=Math.round(a[1]*eval(str))/a[1];tS=t.toString();if(a[2]>0){tSp=tS.indexOf(".");
if(tSp==-1) tS+=".";tSp=tS.indexOf(".");while(tSp!=(tS.length-1-a[2])){tS+="0";
tSp=tS.indexOf(".");}} MM_findObj(a[0]).value=tS;
}
function KW_calcForm() { //v1.2
var str="",a=KW_calcForm.arguments; for (var i=3;i<a.length;i++)
str+=(a[i].indexOf("#")==-1)?a[i]:KW_getVal(MM_findObj(a[i].substring(1)));
t=Math.round(a[1]*eval(str))/a[1];tS=t.toString();if(a[2]>0){tSp=tS.indexOf(".");
if(tSp==-1) tS+=".";tSp=tS.indexOf(".");while(tSp!=(tS.length-1-a[2])){tS+="0";
tSp=tS.indexOf(".");}} MM_findObj(a[0]).value=tS;
}
 </script>

既然您使用的是jQuery,那么下面的内容如何:

$('select[name="Operator"]').on('change', function() {
    if($(this).val() == "Dani") {
        //do what you want here
    }    
});
上面的代码会触发更改,我现在认为这不是你的意思。 见:

您可能需要:

if($('[name="Operator"]') == "Dani") {}

在您自己的示例中,您使用了“Operator”作为选择器,但在jQuery中,您查找的是ID而不是名称

如果$Operator.val==Dani可能?我试过了,didint-work也试过了,didint-work,也许我不应该使用jQueryI编辑了我的答案,因为我想我误解了你最初的问题
$('select[name="Operator"]').on('change', function() {
    if($(this).val() == "Dani") {
        //do what you want here
    }    
});
if($('[name="Operator"]') == "Dani") {}