簡體   English   中英

附加不受JavaScript影響的jQuery值

[英]Append jQuery values not affected by javascript

我通過jQuery將值附加到div中,但是我意識到附加的內容不受我的javascript函數影響。

$(".div").append("<input type='text' class='textForm' placement='Value' />");

我在JavaScript代碼中設置的是,它接受任何類“ textForm”的屬性位置並使其成為值。 但是我已經意識到,一旦附加了值,它就不會受到我的javascript的影響。 有關如何解決此問題的任何想法?

如果您當前正在使用

$(".textForm").click(){}

然后現在使用

$(document).on("click",".textForm",function(){//Dtuff here})

這會將.on("click")附加到document對象,這樣,它將在存在的所有元素以及與.textForm選擇器匹配的所有創建的元素上啟用。

我猜您有一些事件綁定到某些元素,例如在append之后不起作用。 這樣的事情。

$(function(){
    $(".someClass").click(function(){
       //dome some thing
    });
});

如果您希望新注入的(通過append / jquery ajax等動態添加的)DOM元素具有相同的功能,則應考慮on使用jquery。 所以你的代碼應該像這樣更改

$(function(){
    $(document).on("click",".someClass",function(){
       //dome some thing
    });
});

on將適用於當前和將來的元素

我不確定我對您為什么將值從Placement屬性復制到輸入值中有些了解,但是我可以提供此建議以使您的表單字段顯示出來。

$("div").each(function() {
    $(this).append($("<input type='text' class='textForm' placement='Value' />"))
});

我假設您想通過標簽名稱而不是類名稱來標識div。 如果是這種情況,您的jQuery選擇器將需要為“ div”,而不是“ .div”。 另外,您需要將HTML封裝在$()中才能生成DOM元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM