我想添加一個按鈕到某些文本字段以允許其他輸入方法。由於按鈕應該能夠引用它所屬的文本字段,因此我在該按鈕的onClick()
處理函數中爲函數調用添加了一個參數,其中包含文本字段的ID。jQuery id不生成文本表示
至少,這是我的計劃。當我獲得文本字段的ID並將其顯示在警報中時,它會很好地顯示。但是,當我使用$(this).attr('id')
的結果作爲函數參數時,我期望將一個字符串賦予該函數(元素的id)。而是給出一些奇怪的對象。
如何將該對象轉換爲字符串?或者有一個概念上的缺陷?
<form>
<input class="joeDateTime" type="text" name="n1" id="n1" value="2014-09-01 17:30:00">
</form>
<script>
function handleJoeDateTime(e)
{
alert('Edit '+e); // shows 'Edit [object HTMLInputElement]'
}
$(document).ready(function() {
$('.joeDateTime').each(function(){
var i = $(this).attr('id');
alert(i); // shows 'n1'
$('<button onclick="handleJoeDateTime(' + i + ');return false;"></button>').insertAfter($(this));
});
});
</script>
感謝您指出我的缺點,更在適當的風格的洞察力。 :-) – 2014-10-04 08:44:18