Radiobuttons和Checkboxes在Javascript中"检查"了问题

 李亞男大宝贝 发布于 2023-02-09 13:59

我有Javascript代码JQuery用于创建包含自由文本,单选按钮(单选)和复选框(多选)问题的测验.测验是使用Web界面制作的,Zurb - Foundation用于样式,并在JSON中进行序列化.在创建单选按钮和特定问题的复选框答案时,当用户检查任一组件时(例如,将其标记为有效答案),它应该验证这一点,并且变为"true"(由JSON中的数字"1").

它目前正在处理文本类型问题,因为它基本上是硬编码的.但它并没有为其他两个做伎俩.

这是主要的代码片段(如果需要更多,我将编辑问题):整个测验

storeQuiz: function( event ) {
      var self = event.data;
      var store = [];

      $(self.element).find( '.question-content' ).each( function(){
        var question = $( this );
        var entry = { options: [] };

        if ( question.parent().attr( 'class' ).match( /template/ ) ) {
          return true;
        }

        entry['content'] = question.find( '.input' ).val();
        entry['type'] = question.parent().attr( 'class' ).match( /quiz-(\w+)/ )[1];

        question.find( '.option' ).each( function() {
          var option = $( this );
          var data = {};

          if ( entry.type === 'text' ) {

            data['valid'] = true;
          } else {
            data['valid'] = !!option.find( '.option-validation input' ).attr( 'checked' );
          }

          data['content'] = option.find( '.option-content textarea' ).val();

          entry.options.push( data );
        })

        store.push( entry );
      });

      self.storeUpdate( store );
    },

收音机:

buildRadios: function( data ) {
      var tmpl = this.radiosHandler( {data: this} );
      var self = this;

      tmpl.find( '.option' ).remove();
      tmpl.find( '.input' ).val( data.content );

      $.each( data.options, function() {
        var plus = tmpl.find( '.add' );
        var option = self.addAnswer.call( plus, {data: self} );
        option.find( '.option-validation input' ).attr( 'checked', this.valid );
        option.find( '.option-content textarea' ).val( this.content );
      });
    },

复选框:

   buildCheckboxes: function( data ) {
      var tmpl = this.checkboxesHandler( {data: this} );
      var self = this;

      tmpl.find( '.option' ).remove();
      tmpl.find( '.input' ).val( data.content );

      $.each( data.options, function() {
        var plus = tmpl.find( '.add' );
        var option = self.addAnswer.call( plus, {data: self} );
        option.find( '.option-validation input' ).attr( 'checked', this.valid );
        option.find( '.option-content textarea' ).val( this.content );
      });
    },

MaiKaY.. 6

如果你使用它会更聪明

$('input[type="checkbox"]').is(':checked');

返回值是布尔值

1 个回答
  • 如果你使用它会更聪明

    $('input[type="checkbox"]').is(':checked');
    

    返回值是布尔值

    2023-02-09 14:02 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有