使用Jquery或Javascript追加后获取元素

时间:2017-08-16 07:48:58

标签: javascript jquery html

我有string PathConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + safefilename.Text + ";Extended Properties=Excel 12.0;"; OleDbConnection conn = new OleDbConnection(PathConn); OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("SELECT * FROM [" + textBox_sheet.Text + "$]", conn); DataTable dt = new DataTable(); myDataAdapter.Fill(dt); dataGridView1.DataSource = dt; 。我正在尝试追加另一个包含内部的内容。我正在尝试通过id调用输入标记,但是我没有得到这个元素!我在堆栈中尝试了很多问题,但我无法解决这个问题。

以下是 HTML 代码

<div>

jquery 用于附加div和输入标记

<div id="newContDiv" class="form-group">
  <div id="newDiv"></div>
 </div>

我将元素称为

 var v = "<div id = 'coverDiv'><div id='appDiv'><div><input id='panNumId' 
      type='text' name='panImg1' placeholder='Enter your Pancard number'/>
      </div></div>";
  $('#newDiv').append(v);

2 个答案:

答案 0 :(得分:1)

由于您的元素是动态追加的,因此您无法像处理一样处理点击事件。您需要将点击事件更新为:

$("#newDiv").on("click", "#panNumId", function(){
    // code goes here
});

喜欢这个

&#13;
&#13;
$(function() {
  var v = "<div id = 'coverDiv'><div id='appDiv'><div><input id='panNumId' type = 'text'name = 'panImg1'placeholder = 'Enter your Pancard number' / ></div></div > ";
  $('#newDiv').append(v);

  // it will alert the moment you click the textfield
  $('#newDiv').on("click", "#panNumId", function() {
    alert("clicked");
  });


});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="newContDiv" class="form-group">
  <div id="newDiv"></div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你可以这样做。

希望这会对你有所帮助:)。

&#13;
&#13;
var v = "<div id = 'coverDiv'><div id='appDiv'><div><input id='panNumId' type='text' name='panImg1' placeholder='Enter your Pancard number'/></div></div>";
$('#newDiv').append(v);
$(document).on('click','#panNumId',function () {
   alert("clicked");
 });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="newContDiv" class="form-group">
    <div id="newDiv"></div>
 </div>
&#13;
&#13;
&#13;