代碼中一些問題及解決方式

1.獲取焦點,並使得焦點位置在末端(初始在開始)
原理:就是將原來的值置空之後複製進去

function submitFpcx(){
    layer.load();
    var fpdm=$("#fpdm_id");
    if(!(/^[0-9]{12}$/.test(fpdm.val().trim()))){
        layer.alert("發票代碼錯誤", {icon: 2},function (index) {            
            var t=fpdm.val();     
            fpdm.val("").focus().val(t);   
        });    
    layer.closeAll('loading');
}}

2.循環出來的不確定個數的數據行,需要進行ajax操作,且需要傳遞的數值較多
解決:在每一行的操作按鈕上綁定onclick方法,方法中綁定需要數據,在綁定的同時調用ajax方法

3.通過jQuery的$(“#id”).val()方法獲取表單中數據時不準確(如“00000345”字符串被傳遞爲int數,導致傳遞不準確):
解決:在方法中傳遞當前標籤this,獲取父標籤,然後依次獲取子標籤裏的文本內容

<foreach name="fpdxx" item="mx" key="k">
    <tr>
        <td class="hidden-xs">{$k+1}<if/></td>
        <td class="hidden-xs">{$mx.fpdm}</td>
        <td class="hidden-xs">{$mx.qshm}</td>
        <td class="hidden-xs">{$mx.zzhm}</td>
        <td class="hidden-xs">{$mx.fpfs}</td>
        <td class="hidden-xs">{$mx.syfs}</td>
        <td class="hidden-xs">{$mx.lgrq}</td>
        <td class="hidden-xs">{$mx.lgry}</td>
            <input type="text" id="fffs" name="fffs"/>
        </td>
        <td>
            <button onclick="getdata(this)">分發</button>
        </td>    
    </tr>
</foreach>
 function getdata(a){
     var tds = $(a).parents("tr:first").children();
      //獲取信息
     var fffs=parseInt(tds.eq(8).children().val().trim());    
     var syfs=parseInt(tds.eq(5).text().trim());
     var senddata = {
        'fpdm':tds.eq(1).text(),   
        'qshm':tds.eq(2).text(), 
        'zzhm':tds.eq(3).text(),
        'syfs':tds.eq(5).text()
    }; 
}
發佈了25 篇原創文章 · 獲贊 12 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章