2012-09-24 45 views
2

我收到多个onclicks在平板电脑上的广播电台,在桌面上通用工作正常,但在平板电脑上selectCompany被调用两次,是否有onclick平板电脑上的问题?jQuery Mobile单选按钮,onclick事件的问题?

下面是代码:

<div class="formcontent" id="formContent"> 
    <div data-role="fieldcontain" id="companyContainer" class="ui-field-contain ui-body ui-br"> 
     <fieldset data-role="controlgroup" class="ui-corner-all ui-controlgroup ui-controlgroup-vertical"> 
      <div role="heading" class="ui-controlgroup-label">Empresa:</div> 
      <div class="ui-controlgroup-controls"> 
       <div class="ui-radio"> 
        <input type="radio" onclick="selectCompany(1)" name="company_select" id="company_select_0" value="0"> 
        <label for="company_select_0" data-corners="true" data-shadow="false" data-iconshadow="true" data-wrapperels="span" data-icon="radio-off" data-theme="c" class="ui-btn ui-btn-icon-left ui-corner-top ui-btn-up-c ui-radio-off"><span class="ui-btn-inner ui-corner-top"><span class="ui-btn-text">Google</span><span class="ui-icon ui-icon-shadow ui-icon-radio-off">&nbsp;</span></span> 
        </label> 
       </div> 
       <div class="ui-radio"> 
        <input type="radio" onclick="selectCompany(2)" name="company_select" id="company_select_1" value="1"> 
        <label for="company_select_1" data-corners="true" data-shadow="false" data-iconshadow="true" data-wrapperels="span" data-icon="radio-off" data-theme="c" class="ui-btn ui-btn-icon-left ui-radio-off ui-btn-up-c"><span class="ui-btn-inner"><span class="ui-btn-text">Amazon</span><span class="ui-icon ui-icon-shadow ui-icon-radio-off">&nbsp;</span></span> 
        </label> 
       </div> 
       <div class="ui-radio"> 
        <input type="radio" onclick="selectCompany(4)" name="company_select" id="company_select_2" value="2"> 
        <label for="company_select_2" data-corners="true" data-shadow="false" data-iconshadow="true" data-wrapperels="span" data-icon="radio-off" data-theme="c" class="ui-btn ui-btn-icon-left ui-corner-bottom ui-controlgroup-last ui-radio-on ui-btn-up-c"><span class="ui-btn-inner ui-corner-bottom ui-controlgroup-last"><span class="ui-btn-text">Apple</span><span class="ui-icon ui-icon-shadow ui-icon-radio-on">&nbsp;</span></span> 
        </label> 
       </div> 
      </div> 
     </fieldset> 
    </div> 
</div> 
+0

你有没有使用onchange的运气呢? – thewebguy

+0

做无线电支持onchange?我会试试看。 – Astronaut

回答

0

我所做的是取消绑定变量...

$("#foodiv").bind("click", function(event) { 
    functionCalledOnce(); 
    $(this).unbind(event); 
}); 

它的清洁和运作良好的效果。

2

我会检查this问题。基本上,似乎点击事件触发了几个触摸事件。也许检测浏览器(即如果在平板电脑上)并以不同方式处理绑定将解决您的问题。

+0

我有一个问题,我的数值是动态的...我需要找出解决此问题的更好方法。 – Astronaut

+0

也许在[jquery.data](http://api.jquery.com/jQuery.data/)和[jquery.on](http://api.jquery.com/)中使用数据属性和类的组合在/)将解决你所需要的。例如: $(document).ready(function(){ $(“。myradios”)。on “mousedown touchstart MozTouchDown”, function(){alert($(this).data(“myid”);} ); }); – Steve