[英]How do I get the value of this textarea jquery
單擊類“ save_caption”的鏈接時,我試圖獲取textarea(class =“ caption_textarea”)的值。
textarea的值使用ajax進行了更改,我在此處未包括該值,因此它並不總是空的。
我有以下HTML代碼:
<div class="caption_text" style="display:none;">
<div class="small_icons">
<a href="#" onclick="return false;" class="save_caption"><img src="<?php echo base_url('public/images/tick.png'); ?>"/></a>
<a href=""><img src="<?php echo base_url('public/images/delete.png'); ?>"/></a>
</div>
<textarea id="<?php echo $image_name_without_path[0]; ?>" class="caption_textarea" cols="32" rows="2" name="caption_text"></textarea>
</div>
我嘗試了jquery的next,closed和find方法,但無法檢索與單擊的元素最接近的文本字段的值。 jQuery代碼如下:
jQuery(document).ready(function($) {
$('.save_caption').live("click", function() {
alert($(this).closest('textarea').find('.caption_textarea').val());
});
});
最近的()查找closes的祖先 。 您可能想嘗試next()或nextAll()
jQuery(document).ready(function($) {
$('.save_caption').live("click", function() {
alert($(this).next('textarea.caption_textarea').val());
});
})
或類似的東西應該可以正常工作。
你可以找到cpmmon父caption_text
使用.closest() ,然后使用發現里面的文字區域.find()
jQuery(document).ready(function($) {
$('.save_caption').live("click", function() {
alert($(this).closest('.caption_text').find('.caption_textarea').val());
});
});
jQuery(document).ready(function($) {
$('.save_caption').live("click", function() {
alert($(this).closest('.caption_text').find('.caption_textarea').val());
});
});
為什么使用最接近的? 我可能會丟失一些代碼細節。 無論哪種方式,解決方案都不是:
alert($('.mytextarea').val());
要么:
alert($('.mytextarea').html());
如果您的問題是該類不是該文本區域所獨有的(我會使用一個id,但是由您自己決定),請嘗試:
alert($(this).next().val());
您可以使用'textarea.mytextarea'將其嚴格保留在textareas或.next('textarea')中。
歡迎提供更正和版本。
ps:請確保“ this”為您提供了正確的元素。
稍微改變選擇器。 首先,選擇.save_caption的父項,然后查找具有.caption_textarea類的同級項。 您的代碼在下面做了一些修改-
jQuery(document).ready(function($) {
$('.save_caption').live("click", function() {
alert($(this).parent().siblings('.caption_textarea').val());
});
});
希望它能工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.