2013-03-01 46 views
2

這是我笨視圖,其中我使用AJAX POST數據到我的控制器如何選擇只有這些入圍

<script type="text/javascript"> 
     $(document).ready(function(){ 
      // find the input fields and apply the time select to them. 
      $('#sample1 input').ptTimeSelect(); 
     }); 
    </script> 
    <script type="text/javascript"> 

function add_chamber() { 
    $.ajax({ 
     url: '<? echo base_url("index.php/doctormain/add_chamber"); ?>', 
     type: "POST", 
     data: { 
      name : $("input#name").val(), 
      address : $("input#address").val(), 
      city : $("input#city").val(), 
      locality : $("input#locality").val(), 
      state:$("input#state").val(), 
      landline : $("input#landline").val(), 
      mobile : $("input#mobile").val(), 
      fees : $("input#fees").val(), 
      email : $("input#email").val(), 
      days : $("input#mon:checked").val() +$("input#tue:checked").val()+$("input#wed:checked").val()+$("input#thur:checked").val()+$("input#fri:checked").val()+$("input#sat:checked").val()+$("input#sun:checked").val(), 
      start : $("input#start").val(), 
      end : $("input#end").val(), 
      comments : $("input#comments").val() 
     }, 
     success :function(response) { 

      $('#sucess').html(response); 
      $("#sucess").dialog({ 
     height: 140, 
     modal: true 
    }); 
     }, 
     error: function(){ 
      alert("Error"); 
     } 
    }); 
} 
</script> 


<div class="content"> 
<div class="content-left"> 
<div class="row1"> 
<h2>Welcome <? echo $username ?></h2> 
<h1> Add Chamber </h1> 
<h2><div id="sucess"></div></h2> 



    <?php echo form_open_multipart('doctormain/add_chamber');?> 

     <table width="100%"> 

<tr><td> Name:</td><td> <input name="name" type="text" id="name"></td></tr> 
<tr><td> Address:</td><td> <input name="address" type="text" id="address"></td></tr> 
<tr><td> City:</td><td> <input name="city" type="text" id="city"></td></tr> 
<tr><td> Locality:</td><td> <input name="locality" type="text" id="locality"></td></tr> 
<tr><td> State:</td><td> <input name="state" type="text" id="state"></td></tr> 
<tr><td> Landline:</td><td> <input name="landline" type="text" id="landline"></td></tr> 
<tr><td> Mobile:</td><td> <input name="mobile" type="text" id="mobile"></td></tr> 
<tr><td> Email:</td><td> <input name="email" type="text" id="email"></td></tr> 
<tr><td> Consultation Fees:</td><td> <input name="fees" type="text" id="fees"></td></tr> 
<tr> 
    <td> Days Of Availability:</td><td> 
    Mon:<input name="mon" type="checkbox" id="mon" value="1" checked> 
    Tue:<input name="tue" type="checkbox" id="tue" value="2" checked> 
    Wed:<input name="wed" type="checkbox" id="wed" value="3" checked> 
    Thur:<input name="thur" type="checkbox" id="thur" value="4" checked> 
    Fri:<input name="fri" type="checkbox" id="fri" value="5" checked> 
    Sat:<input name="sat" type="checkbox" id="sat" value="6" checked> 
    Sun:<input name="sun" type="checkbox" id="sun" value="7" checked> 
    </td></tr> 
    <tr><td> Time Of Availability</td><td> 

    <div id="sample1" class="ui-widget-content" style="padding: .5em;"> 
     <p> 
      <label>Start</label> 
      <input name="s1Time2" id="start" value="" /> 
      <label>End</label> 
      <input name="s1Time2" id="end" value="" /> 
     </p> 
     </div> 



    </td></tr> 
<tr><td> Comments:</td><td> <input name="comments" type="testbox" id="comments" ></td></tr> 

<tr><td> </td><td> <input name="submit" id="submit" class="button" type="button" value="Save" onclick="add_chamber()"> 
</td></tr> 
<? echo form_close();?> 
     </table> 

    <div id="results"> 
    </div> 
    </div> 


</div> 

<div class="content-right"> 
<div class="mainmenu"> 
<h2 class="sidebar1">My Menu</h2> 
<p><ul> 
    <li><a href="#">this is a dummy link 1</a></li> 
    <li><a href="#">this is a dummy link 2</a></li> 
    <li><a href="#">this is a dummy link 3</a></li> 
    <li><a href="#">this is a dummy link 4</a></li> 
    <li><a href="#">this is a dummy link 5</a></li> 
    <li><a href="#">this is a dummy link 6</a></li> 
    <li><a href="#">this is a dummy link 7</a></li> 
    <li><a href="#">this is a dummy link 8</a></li> 
    <li><a href="#">this is a dummy link 9</a></li> 
    <li><a href="#">this is a dummy link 10</a></li> 
</ul></p> 
</div> 



</div> 
</div> 

但在這裏我jQuery的複選框值

days : $("input#mon:checked").val() +$("input#tue:checked").val()+$("input#wed:checked").val()+$("input#thur:checked").val()+$("input#fri:checked").val()+$("input#sat:checked").val()+$("input#sun:checked").val(), 

我只想傳遞選中的複選框的值。

例如,如果複選框ID太陽選中它會通過僅7

但我面臨的問題是,當我選擇它例如週一,週二,太陽是通過12undefined。

誰能幫助我在這個問題上 感謝 Somdeb

+0

[試試這個小提琴(HTTP://的jsfiddle。淨/ NWMyR /) – 2013-03-01 06:24:26

回答

2

嘗試使用this方法:

days = $('input[type=checkbox]:checked').map(function() { 
       return this.value ; 
       }).get().join(','); 

Sample

+0

非常感謝你解決了我的問題 – user2008654 2013-03-01 06:27:05

+0

歡迎..很高興有幫助... :) – Anujith 2013-03-01 06:30:24

1

你可以做到這一點的每();

$("input:checkbox:checked").each() 

$("input:checkbox[name=numbers]:checked") 

將retrun所有的陣列選中的複選框,然後我們可以通過陣列

這裏是Example對於迭代,

+0

可以請告訴我詳細 – user2008654 2013-03-01 06:13:34

0

試試這個: -

days : $("#mon:checked").val() +$("#tue:checked").val()+$("#wed:checked").val()+$("#thur:checked").val()+$("#fri:checked").val()+$("i#sat:checked").val()+$("#sun:checked").val() 
0

這是什麼jQuery serializefind被做了。

function add_chamber() { 
    $.ajax({ 
     url: '<? echo base_url("index.php/doctormain/add_chamber"); ?>', 
     type: "POST", 
     data: { $(table).find(input, checkbox, textbox).serialize(); 
     } 
}, 

入住這裏:http://api.jquery.com/serialize/

1

,而不是這樣做,你可以通過所有選中的複選框

$("input:checkbox:checked").each(function(){ 

days+=$(this).val(); 
} 
1

循環,如果它不工作,然後嘗試用.is()檢查。

var passDays; 

if($("#mon").is(':checked')) 
{ 
    passDays += $(this).val(); 
} 

if($("#tue").is(':checked')) 
{ 
    passDays += $(this).val(); 
} 

days : passDays, 

你也可以用它裏面passDaysarraypush值。

此外,您可以使用.each()優化此代碼並檢查它與​​然後push它在數組中。

0

你可以試試這個:

var days = {}; 
$('form input[type=checkbox]').each(function() { 
    days[$(this).attr('value')] = $(this).attr('checked'); 
});