2011-12-01 72 views
0

我已經看過類似的例子在stackoverflow,我想我得到的代碼正確,但它不工作。Jquery通過TD最接近的輸入得到輸入值

  1. 我的TD的由網格對象上的蒼蠅產生
  2. 我試圖獲得(和最終改變),其位於內<td col="isrc">拳頭空輸入值:

    $("#get_isrc").click(function(){ 
        $.ajax({ 
         url: 'isrc.php', 
         success: function(data){ 
          $("#new_isrc").val(data); 
          $("#get_isrc").val('Apply'); 
          $("#get_isrc").addClass('apply'); 
         }    
        }).error(function(){ 
         alert('Error'); 
        }); 
    }); 
    
    $(".apply").click(function(){ 
        var s = $("td[col=ISRC] input").val(); 
        alert(s); 
    }); 
    

HTML - 靜:

<h3>Generate next ISRC</h3> 
    <input id="new_isrc" type="text" /> 
    <input id="get_isrc" type="button" value="Get next ISRC" /> 

HTML GE通過jQuery的nerated:

<tr id="3"><td col="ISRC" style="width: 101px; " class="editableCell"><input class="editableInput " type="text"></td></tr> 
<tr id="1"><td col="ISRC" style="width: 101px; " class="editableCell"><input class="editableInput " type="text"></td></tr> 
<tr id="2"><td col="ISRC" style="width: 101px; " class="editableCell"><input class="editableInput " type="text"></td></tr> 

TR的1和2有從數據庫

TR 3 ISRC值 - 新加入,我想產生ISRC適用於它,但此刻我的代碼只是需要提醒我一個新的價值 - 它的工作...

回答

0

你嘗試使用,而不是生活作爲其生成後的document.ready

$(".apply").live("click", function(){ 
    var s = $("td[col=ISRC] input").val(); 
    alert(s); 
    //$(s).focus(); 
}); 
+0

肯定。這確實奏效。有趣的是,我使用live()稍高於此代碼出於同樣的原因!我需要週末......謝謝 – Elen

+0

我有困難,改變價值..我應該使用live()內的另一個live()嗎? - $( 「申請 」)生活(「 點擊」,函數(){ \t \t \t如果($( 「TD [COL = ISRC]輸入」)VAL()){ \t \t \t \t這個! .val($(「#new_isrc」).val()); \t \t \t} \t \t}); – Elen

+0

if(s ===「」){$(this).val(($(「#new_isrc」)。val()));}我假設你想要做,如果s.value是空的,然後設置它到#new_isrc的值? – Owen