Javascript“if"声明的问题

Javascript "if" statement issues

本文关键字:声明 问题 quot if Javascript      更新时间:2023-09-26

所以我有一个函数,当复选框字段上的东西被选中时触发。当选择一个选项时,脚本需要返回,并查看下拉字段是否具有特定值。如果那个字段有那个特定的值,那么它就需要运行If语句中的代码。如果没有,则需要跳过该代码并转到下一个下拉列表。

所有的代码都工作完全如何我需要它是从头到尾。唯一的问题是引用下拉列表的if语句不起作用。无论我在下拉字段中选择什么值,脚本都将运行。

var carOp1-8是下拉字段。如果下拉字段选择了"simplex",那么我需要它里面的代码来运行。问题是我的代码正在运行,无论我每次选择下拉字段。是否有什么问题的sentex ' var carOp1…if语句?

我也试过if (name == "this")

这里是jsfiddle的链接,这样你就可以了解我在说什么。http://jsfiddle.net/upcQ8/(在我的表单上,当我点击下一个按钮时,页面会自动加载,我不知道如何在JSfiddle上实现这一点。

这是我使用的javascript…

// Additional Options
$('input[name="item_meta[2002][]"]').change(function(){
var carOp1 = $("select[name='item_meta[2095]']").val();
var carOp2 = $("select[name='item_meta[399]']").val();
var carOp3 = $("select[name='item_meta[405]']").val();
var carOp4 = $("select[name='item_meta[402]']").val();
var carOp5 = $("select[name='item_meta[404]']").val();
var carOp6 = $("select[name='item_meta[403]']").val();
var carOp7 = $("select[name='item_meta[401]']").val();
var carOp8 = $("select[name='item_meta[400]']").val();
var simOpn1 = 0;
// Car 1 Simplex
if (carOp1 ="Simplex") {
    var opn1 = $("#field_open1").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open1").val();
}} 
// Car 2 Simplex
if (carOp2 ="Simplex") {
    var opn1 = $("#field_open2").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open2").val();
}} 
// Car 3 Simplex
if (carOp3 ="Simplex") {
    var opn1 = $("#field_open3").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open3").val();
}} 
// Car 4 Simplex
if (carOp4 ="Simplex") {
    var opn1 = $("#field_open4").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open4").val();
}} 
// Car 5 Simplex
if (carOp5 ="Simplex") {
    var opn1 = $("#field_open5").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open5").val();
}} 
// Car 6 Simplex
if (carOp6 ="Simplex") {
    var opn1 = $("#field_open6").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open6").val();
}} 
// Car 7 Simplex
if (carOp7 ="Simplex") {
    var opn1 = $("#field_open7").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open7").val();
}} 
// Car 8 Simplex
if (carOp8 ="Simplex") {
    var opn1 = $("#field_open8").val();
    if (Number(opn1) >= Number(simOpn1)) {
        var simOpn1 = $("#field_open8").val();
}} 
// Simplex 1 Car Call Security
if ($("input[name='item_meta[2002][]']:checked").val()=="Car Call Security"){   
    var carSec1 = simOpn1;
} else var carSec1 = 0;
    {$("#field_s1calc").val(carSec1).change();} 
}); 

JavaScript你想我们'=='或'==='。对于字符串,在javascript中编码时最好使用'==='。

例如:

// Car 1 Simplex
if (carOp1 =="Simplex") {
var opn1 = $("#field_open1").val();
if (Number(opn1) >= Number(simOpn1)) {
    var simOpn1 = $("#field_open1").val();
}} 

你必须记住'='是给某物赋值。而'=='(在javascript中'===')是比较。

Edit: ===也匹配该类型。所以直接用'=='