2016-11-24 4 views
2

У меня есть форма ниже, когда мы выберем «Дизайнер», вместо того, чтобы отображать опции, чтобы выбрать «Номер заказа» & один раз, если выбрать «Номер заказа», чем только это позволит выбрать «Продукт», , где «Продукт» - это многоэкранный.Удалить подтверждение для кнопки «Сброс»

enter image description here

Предположим, я выбрал «Конструктор» & «Номер заказа», чем , когда я нажмите кнопку Reset, его делает проверки, что его просят заполнить «продукта» значения, его штраф за представить buttton, но он не должен делать валидацию для кнопки «СБРОС».

Я пытаюсь this, но до сих пор ее не работает ....

Здесь все значения параметра, которые извлечения динамически PHP кода, как показано ниже.

enter image description here

Продукт множественного выбора коробки

enter image description here

форма

<form method="post" enctype='multipart/form-data' action="update_paidstatus.php" onsubmit="return validate();"> 
    <table> 
    <tr> 
     <td> Designer </td>  
     <td> 
      <select onchange="getOrderDetail(event);" name="designer_id" id="designer_id"> 
      <option value="">Select Designer</option> 
      <?php while($data = $stmt->fetch()) { if($data['type']=="admin")continue;?> 
       <option value="<?php echo $data['userID'];?>"><?php echo $data['name'];?></option> 
      <?php } ?> 
      </select> 
     </td> 

     <td><p id="error_para1" ></p></td> 
    </tr> 

     <tr> 
     <td> 
      Order Number: 
     </td> 
     <td> 
     <div id="ordernumbers"> 
      <select name="designerorder_id" id="designerorder_id"> 
      <option value="">Select Order</option> 
      </select> 
      </div> 
     </td> 
     <td><p id="error_para2" ></p></td> 
     </tr> 
     <tr> 
     <td> 
      Product 
     </td> 
     <td> 
     <div id="productnumbers" name="dproduct_ids" id="dproduct_ids"> 
      <select id="mySelect"> 
      <option>Select Products</option> 
      </select> 

     </div> 
     </td> 
     <td><p id="error_para3" ></p></td> 
     </tr> 

    </table> 
    <hr/> 

<input type="hidden" name="dproduct_id" id="dproduct_id" value=""/> 
    <input class="btn btn-large btn-primary" name="btn-signup" type="submit" id="btnSubmit" value="Submit" /> 
    <button formnovalidate="formnovalidate" class="btn btn-large btn-primary">RESET</button> 

    </form> 

Script

function validate() 
{ 
// alert("d"); 
var error=""; 
var designer_id = document.getElementById("designer_id"); 
if(designer_id.value == "") 
{ 
    error = " Please Select Designer"; 
    document.getElementById("error_para1").innerHTML = error; 
    return false; 
} 
var error=""; 
var dproduct_ids = document.getElementById("dproduct_ids"); 

if(dproduct_ids.value == "") 
{ 
    error = " Please Select Product"; 
    document.getElementById("error_para3").innerHTML = error; 
    return false; 
} 
var error=""; 
var designerorder_id = document.getElementById("designerorder_id"); 
if(designerorder_id.value == "") 
{ 
    error = " Please Select Order"; 
    document.getElementById("error_para2").innerHTML = error; 
    return false; 
} 
var error=""; 
var commission = document.getElementById("commission"); 
alert(commission.value); 
if(commission.value == "") 
{ 
    error = " Please add commission"; 
    document.getElementById("error_para5").innerHTML = error; 
    return false; 
} 
var error=""; 
var Duedate = document.getElementById("Duedate"); 
if(Duedate.value == "") 
{ 
    error = " Please Select Designer"; 
    document.getElementById("error_para6").innerHTML = error; 
    return false; 
} 
    else 
{ 
    return true; 
} 
} 


$(document).ready(

    /* This is the function that will get executed after the DOM is fully loaded */ 
    function() { 
    $("#datepicker").datepicker({ 
     changeMonth: true,//this option for allowing user to select month 
     changeYear: true //this option for allowing user to select from year range 
    }); 
    } 

); 
    function getOrderDetail(e) 
    { 
    var designerId=e.target.options[e.target.selectedIndex].value;  
    var url="http://sbdev2.kidsdial.com:81/php/site6/designerpaidstatus.php?designer_id="+designerId+"&opration=2"; 
     var request = jQuery.ajax({ 
       url: url , 
       type: 'POST',      
      }); 

      request.done(function (result) 
      { 
       document.getElementById('ordernumbers').innerHTML =result; 

      }); 
      request.fail(function (error) 
      { 
       console.dir(error);    
      }); 
    } 
    function getProductDetail(e) 
    {  
    var productId = $("#dproductselect option:selected").attr("class"); 
    var finalstrig=productId.split(","); 

    var select=''; 
    select+='<select class="test" multiple="multiple" name="dproduct_ids" id="dproduct_ids">'; 

    for(i=0;i<finalstrig.length;i++) 
    { 
     if(finalstrig[i]!=0) 
     { 
     select +='<option value="'+finalstrig[i]+'">'+finalstrig[i]+'</option>'; 
     } 
    } 
    select +='</select>'; 
    document.getElementById('productnumbers').innerHTML =select; 
    (function($) { 
    $(function() { 
     $('.test').fSelect(); 
    }); 
})(jQuery); 

    } 
    <!-- reset --> 
$("button").click(function() { 
    $("#mySelect").val([]); 
}); 

Примечания: Я пробовал много, прежде чем отправлять сюда, и я новичок в этом мире программирования .... пожалуйста, помогите мне ....

+0

"перезагрузки" кнопка также кнопка отправки -> '<входной тип = "сбросить" значение = "RESET"/>' – Andreas

+0

@Andreas я хочу удалите проверку только для кнопки «reset», поэтому я использую этот код для кнопки сброса: '$ (« кнопка »). click (function() { $ (" # mySelect ").Вал ([]); }); ' –

+0

@abcd делать то, что' @ Andreas' сказал –

ответ

0

Поскольку вы динамически вставить некоторые HTML элементы, так просто input тег с типом reset не может решить вашу проблему, вам также необходимо зарегистрировать прослушиватель для удаления этих дополнительных элементов при нажатии кнопки ввода сброса.

Замените свой сброс button тегом следующим тегом HTML input и в своем скрипте замените ваш код возврата на следующий код сценария.

HTML:

<input type="reset" class="btn btn-large btn-primary" id='button_reset' formnovalidate="formnovalidate" value="RESET"/> 

Сценарий:

$(function(){ 
    $("#button_reset").click(function() { 
    $("#productnumbers").html('<select id="mySelect"><option>Select Products</option></select>'); 
    }); 
}); 

Надеется, что это решит вашу проблему.

+0

извините, не работает ...... –

+0

Значение атрибута 'multiple' вас' select' в 'getProductDetail 'function wrong, значение' multiple' должно быть 'true'' false', это тип Boolean. – catssay

+0

@ abcd Можете ли вы дать ссылку jsfiddle или codepen, чтобы мы могли видеть, что там произошло? – catssay

0

Make типа кнопки как «кнопка». Попробуйте это ..

<button type="button" onClick="resetSelect()" formnovalidate="formnovalidate" class="btn btn-large btn-primary">RESET</button> 

Затем в сценарии:

<script type="text/javascript"> 
    function resetSelect() { 
    $("#mySelect").fSelect("reload"); 
    } 
</script> 
+0

извините, его не работает .... –

+0

ошибка, которую вы получаете? –

+0

нет ошибки, но когда я нажимаю на 'reset' ничего не происходит .... –

0
<input type="reset" class="btn btn-large btn-primary" formnovalidate="formnovalidate" value="RESET"/> 

Попробуйте этот код для кнопки Reset

+0

Я пробовал это раньше, он решит текущую проблему, но создаст еще одну проблему, то есть после того, как я нажму кнопку перезагрузки, значения продукта останутся такими же: http://prnt.sc/db4285 –

+0

Большое спасибо .. .. –