草庐IT

javascript - 如果没有从选择框中选择任何值(标题除外),则返回 false

coder 2023-08-11 原文

我有一个带有选择框的 HTML 表单。在选择第一个下拉菜单时,下一个下拉菜单应该使用 AJAX 自动填充。

Download Records (id="getCsv") 按钮点击事件中生成一个 CSV 文件。问题是,我想强制所有字段。这是 jquery 代码

var teacher_name = $("#sel_teacher option:selected").text();
var unittest_name = $("#sel_test1 option:selected").text();

var class_name = $("#sel_class1 option:selected").text();
var class_id = $('#sel_class1').val();

var division_name = $("#sel_div1 option:selected").text();
var division_id = $('#sel_div1').val();

var subject_name = $("#sel_sub1 option:selected").text();

if (teacher_name == "") {
    alert('Please Select Teacher Name.');
    return false;
} else if(class_name == "") {
    alert('Please Select Class Name.');
    return false;
} else if(division_name == "") {
    alert('Please Select Division Name.');
    return false;
} else if(subject_name == "") {
    alert('Please Select Subject Name.');
    return false;
} else if(unittest_name == "") {
    alert('Please Select Unit Test Name.');
    return false;
} else {
    var myObject = new Object();
    myObject.class_name = class_name;
    myObject.class_id = class_id;
    myObject.division_name = division_name;
    myObject.division_id = division_id;
    myObject.subject_name = subject_name;
    myObject.test_name = unittest_name;

    var formData = JSON.stringify(myObject);
    $('#getCsv').attr('href','csv_generator.php?data=' + formData);
}

问题是,当我单击下载记录 时,即使第一个选择框为空,也会直接弹出第二个选择框的警告框。我尝试使用以下方法解决此问题,但没有成功。

if ($("#sel_teacher").attr("selectedIndex") == 0) {
   alert("You haven't selected anything!");
   return false;
}

有人可以帮我解决这个问题吗?感谢您的帮助。

最佳答案

selectedIndex是一个属性,使用prop:

$("#sel_teacher").prop("selectedIndex")

此外,您可以通过仅使用 $("#sel_teacher").val() 检索所选值并与空字符串进行比较(假设 value 该选项的为空)。

var teacher_name = $("#sel_teacher").val();
// get other <select /> values here...

if (teacher_name == '') {
   alert("You haven't selected anything!");
   return false;
}

// test other values here...

关于javascript - 如果没有从选择框中选择任何值(标题除外),则返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31788544/

有关javascript - 如果没有从选择框中选择任何值(标题除外),则返回 false的更多相关文章

  1. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  2. ruby - 难道Lua没有和Ruby的method_missing相媲美的东西吗? - 2

    我好像记得Lua有类似Ruby的method_missing的东西。还是我记错了? 最佳答案 表的metatable的__index和__newindex可以用于与Ruby的method_missing相同的效果。 关于ruby-难道Lua没有和Ruby的method_missing相媲美的东西吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7732154/

  3. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  4. ruby-on-rails - 如果为空或不验证数值,则使属性默认为 0 - 2

    我希望我的UserPrice模型的属性在它们为空或不验证数值时默认为0。这些属性是tax_rate、shipping_cost和price。classCreateUserPrices8,:scale=>2t.decimal:tax_rate,:precision=>8,:scale=>2t.decimal:shipping_cost,:precision=>8,:scale=>2endendend起初,我将所有3列的:default=>0放在表格中,但我不想要这样,因为它已经填充了字段,我想使用占位符。这是我的UserPrice模型:classUserPrice回答before_val

  5. ruby-on-rails - rails 目前在重启后没有安装 - 2

    我有一个奇怪的问题:我在rvm上安装了ruby​​onrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(

  6. ruby - 默认情况下使选项为 false - 2

    这是在Ruby中设置默认值的常用方法:classQuietByDefaultdefinitialize(opts={})@verbose=opts[:verbose]endend这是一个容易落入的陷阱:classVerboseNoMatterWhatdefinitialize(opts={})@verbose=opts[:verbose]||trueendend正确的做法是:classVerboseByDefaultdefinitialize(opts={})@verbose=opts.include?(:verbose)?opts[:verbose]:trueendend编写Verb

  7. ruby - 在没有 sass 引擎的情况下使用 sass 颜色函数 - 2

    我想在一个没有Sass引擎的类中使用Sass颜色函数。我已经在项目中使用了sassgem,所以我认为搭载会像以下一样简单:classRectangleincludeSass::Script::FunctionsdefcolorSass::Script::Color.new([0x82,0x39,0x06])enddefrender#hamlengineexecutedwithcontextofself#sothatwithintemlateicouldcall#%stop{offset:'0%',stop:{color:lighten(color)}}endend更新:参见上面的#re

  8. ruby-on-rails - 如果 Object::try 被发送到一个 nil 对象,为什么它会起作用? - 2

    如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象

  9. ruby - 如果指定键的值在数组中相同,如何合并哈希 - 2

    我有一个这样的哈希数组:[{:foo=>2,:date=>Sat,01Sep2014},{:foo2=>2,:date=>Sat,02Sep2014},{:foo3=>3,:date=>Sat,01Sep2014},{:foo4=>4,:date=>Sat,03Sep2014},{:foo5=>5,:date=>Sat,02Sep2014}]如果:date相同,我想合并哈希值。我对上面数组的期望是:[{:foo=>2,:foo3=>3,:date=>Sat,01Sep2014},{:foo2=>2,:foo5=>5:date=>Sat,02Sep2014},{:foo4=>4,:dat

  10. ruby-on-rails - link_to 不显示任何 rails - 2

    我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article

随机推荐