2017-07-08 9 views
-3

私はtdのIDを使用してトップ値と左の値を見つけたいですが、私はテキストボックスの値を取らなければなりません。id値をjavaScriptのテキストボックスの値で送信できますか?

t2があなたのテキストボックスである、あなたはこのような何かをしたいと思うと仮定すると
$(document).ready(function() { 
    $("#button").click(function() { 

     var _t1 = $("#t1").val(); 
     var _t2 = $("#t2").val();//users write values ​​like 'A2' 'B8' here 
     //alert("Values:" + _t1 + ' ' + _t2); 

     $(document).ready(function() { 
      var value = $("#B5"); //I need to send TextBox's value instead of 
      writing like this 
      var offset = value.offset(); 
      //alert("x : " + offset.top + " y : " + offset.left); 

      <tr> 
       <td>5</td> 
       <td class="d" id="A5"></td> 
       <td class="w" id="B5"></td> 
       <td class="d" id="C5"></td> 
       <td class="w" id="D5"></td> 
       <td class="d" id="E5"></td> 
       <td class="w" id="F5"></td> 
       <td class="d" id="G5"></td> 
       <td class="w" id="H5"></td> 
      </tr> 
+1

どこのテキストボックスでありますか? –

+0

すべてのコードを送信しませんでした。この状態では必要ありません。 –

答えて

1

var td = $('#' + $('#t2').val());

これはありませんが、それは「#」文字をテキストボックスの値を追加してから渡していますこのセレクタとしてのjQueryの連結文字列。

上から表記を使用して:

$(document).ready(function() { 
 
    $("#button").click(function() { 
 
    var inputtedID = $("#t2").val(); 
 
    if (inputtedID) { 
 
     //check that it is not an empty string 
 

 
     var td = $("#" + inputtedID); 
 
     if (td.length > 0) { 
 
     //if there is a td with that ID 
 
     var offset = td.offset(); 
 
     $("#result").text("The offset for " + inputtedID + ": {top: " + offset.top + ", left: " + offset.left + "}"); 
 
     } else { 
 
     $("#result").text("There is no element with id of " + inputtedID); 
 
     } 
 
    } 
 
    }); 
 
});
td{ 
 
    min-width: 10px; 
 
    min-height: 10px; 
 
    
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td>5</td> 
 
    <td class="d" id="A5"></td> 
 
    <td class="w" id="B5"></td> 
 
    <td class="d" id="C5"></td> 
 
    <td class="w" id="D5"></td> 
 
    <td class="d" id="E5"></td> 
 
    <td class="w" id="F5"></td> 
 
    <td class="d" id="G5"></td> 
 
    <td class="w" id="H5"></td> 
 
    </tr> 
 
</table> 
 

 
<input id="t2" /> 
 

 
<button id="button">Get Offset</button> 
 
<br> 
 
<span id="result"></span>

+0

ありがとうございます。もう1つ質問できますか?私はtdの下のイメージを選択したいと思います。平均、このコードで必要な画像を選択するにはどうすればいいですか(var td = $( "#" + enteredID);) –

+0

喜んで助けてください。これで問題が解決した場合は、答えに合格とマークすることを検討してください。あなたの他の質問については、イメージが 'td'要素の中にあり、イメージが1つしかない場合、' var image = td.find( "img"); 'と書く必要があります。あなたは '.find()'でもっと読むことができます:https://api.jquery.com/find/ – Botimoo

+0

Thankk youuuu :) –

関連する問題