反馈模式与星级

时间:2017-04-15 20:55:36

标签: javascript jquery bootstrap-modal

我有一个反馈模式,其中我的评级只是使用+,_符号表示各种类型的评级 - 差,公平,良好,非常好,非常好。现在我必须将此设计转变为星级。我的模态是bootstrap模态。 有没有办法可以将我的代码移到星级?我不知道如何实施星级动画的星级评定。

我目前的反馈模式代码低于

      <div class="modal fade" id="myModal1" role="dialog">
<div class="modal-dialog">

  <!-- Modal content-->
  <div class="modal-content">
    <div class="modal-header">
      <button type="button" class="close" data-dismiss="modal">&times;</button>
      <h4 class="modal-title">Feedback</h4>
    </div>
    <div class="modal-body">
    <div id="message" style="text-align: center; color: green;"></div>
                                    <div class="form-group"> 
                                    <span id="updatecapacitymodalerrortext" style="color:red"></span> 
                                      </div>
                                        <div class="form-group" >
                                        </br>
                                        &nbsp;<label>Your Name : </label>
                                        </br><input type="text" class="form-control" size="10" style="width:50px;"  id="capacity_txt_modal" />
                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                        <br/>

<div class="feedback">
      <div class="feedbackCl" >
      <input id="overall_0" name="overall" id="overall" type="radio" value="1" tabindex="0" aria-describedby="o1-l">
      <label for="overall_0" class="labelClass">
        <span class="sight">— —</span>
        <span class="screen_reader" id="o1-l">Poor</span>
      </label>
    </div>
    <div class="feedbackCl">
      <input id="overall_1" name="overall"  id="overall" type="radio" value="2" tabindex="0" aria-describedby="o2-l">
      <label for="overall_1" class="labelClass">
        <span class="sight">—</span>
        <span class="screen_reader" id="o2-l">Fair</span>
      </label>

    </div>
    <div class="feedbackCl">
      <input id="overall_2" name="overall" id="overall" type="radio" value="3" tabindex="0" aria-describedby="o3-l">
      <label for="overall_2" class="labelClass">
        <span class="sight">+ —</span>
        <span class="screen_reader" id="o3-l">Good</span>
      </label>
    </div>
     <div class="feedbackCl">
      <input id="overall_3" name="overall" id="overall" type="radio" value="4" tabindex="0" aria-describedby="o4-l">
      <label for="overall_3" class="labelClass">
        <span class="sight">+</span>
        <span class="screen_reader" id="o4-l">Very Good</span>
      </label>
    </div>
    <div class="feedbackCl">
      <input id="overall_4" name="overall" id="overall" type="radio" value="5" tabindex="0" aria-describedby="o5-l">
      <label for="overall_4" class="labelClass">
        <span class="sight">+ +</span>
        <span class="screen_reader" id="o5-l">Excellent</span>
      </label>
    </div>
    </div>
    <label for="input-1" class="control-label">Rate This</label>
    <input id="input-1" name="input-1" class="rating rating-loading" data-min="0" data-max="5" data-step="1">
    <button type="button" id="updateCapacityBtn" class="btn btn-info ">Save</button>
    <button type="button" id="capacityModalClose" class="btn btn-default" data-dismiss="modal">Close</button>
    </div>
    </div> 
    <div class="modal-footer">
    </div>
  </div>
  </div>
  </div>  

2 个答案:

答案 0 :(得分:1)

根据您的要求,我已经在您的反馈模式弹出窗口中添加了demo jQuery rating插件,希望这可行

试用此代码:

&#13;
&#13;
$(function () {
     
      $("#rateYo").rateYo({
     
        onSet: function (rating, rateYoInstance) {
           rating = Math.ceil(rating);
           $('#rating_input').val(rating);//setting up rating value to hidden field
           alert("Rating is set to: " + rating);
        }
      });
    });
&#13;
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.2.0/jquery.rateyo.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.2.0/jquery.rateyo.min.js"></script>
<!-- Trigger the modal with a button -->
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Open Modal</button>


<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">


<div class="modal-content">
<div class="modal-header">
  <button type="button" class="close" data-dismiss="modal">&times;</button>
  <h4 class="modal-title">Feedback</h4>
</div>
<div class="modal-body">
<div id="message" style="text-align: center; color: green;"></div>
                                <div class="form-group"> 
                                <span id="updatecapacitymodalerrortext" style="color:red"></span> 
                                  </div>
                                    <div class="form-group" >
                                    <label style="display:inline-block" class="col-md-4">Your Name : </label>
                                    <div style="display:inline-block;" class="col-md-6"><input type="text" class="form-control" size="10" id="capacity_txt_modal" />
                                    </div>

</div>
<label style="display:inline-block;" for="input-1" class="control-label">Rate This</label>
<div style="display:inline-block;" id="rateYo"></div>
<input type="hidden" name="rating" id="rating_input"/>
<br/>
<button type="button" id="updateCapacityBtn" class="btn btn-info ">Save</button>
<button type="button" id="capacityModalClose" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div> 
<div class="modal-footer">
</div>

</div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

为了保留您的标签,我使用了不同的plug in。我只在输入字段中添加了标签:

data-star-captions='["Not Rated", "Poor", "Fair","Good","Very Good","Excellent"]'

摘录:

$('#myModal1').modal('show');
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-star-rating/4.0.1/css/star-rating.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-star-rating/4.0.1/js/star-rating.min.js"></script>


<div class="modal fade" id="myModal1" role="dialog">
    <div class="modal-dialog">

        <!-- Modal content-->
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">&times;</button>
                <h4 class="modal-title">Feedback</h4>
            </div>
            <div class="modal-body">
                <div id="message" style="text-align: center; color: green;"></div>
                <div class="form-group">
                    <span id="updatecapacitymodalerrortext" style="color:red"></span>
                </div>
                <div class="form-group">
                    </br>
                    &nbsp;<label>Your Name : </label>
                    </br><input type="text" class="form-control" size="10" id="capacity_txt_modal"/>
                    <br/>

                    <div class="feedback">
                        <label for="input-1" class="control-label">Rate This</label>
                        <input id="input-1" name="input-1" class="rating rating-loading" data-min="0" data-max="5"
                               data-step="1" data-star-captions='["Not Rated", "Poor", "Fair","Good","Very Good","Excellent"]'>
                    </div>
                    <button type="button" id="updateCapacityBtn" class="btn btn-info ">Save</button>
                    <button type="button" id="capacityModalClose" class="btn btn-default" data-dismiss="modal">Close
                    </button>
                </div>
            </div>
            <div class="modal-footer">
            </div>
        </div>
    </div>
</div>