2012-10-02 66 views
1

當用戶從下拉框中進行選擇時,我想將輸入字段的值更改爲jquery對象,該對象是來自另一個頁面的span元素。當我附加到#myDiv時,這工作正常; span元素顯示出來。但是,我正在嘗試更改文本輸入值,並在選擇更改時顯示「對象對象」。我不明白這種不一致。我如何才能正確地更改值,如#myDiv所做的那樣?謝謝。將輸入值更改爲jquery對象

<script> 

function schedule(selectedValue){ 

var selectedValue = selectedValue - 1; 

$.get('/file.xml', function(data) 
{ 
    var $slides = $(data).find('span.desctext'), 
    selectedslide = $slides.eq(selectedValue); 

    $('#myDiv').append(selectedslide); 
    $("#fvdescription").val(selectedslide); 

}); 

} 
</script> 

HTML:

<form action="preview.php" method="post"> 
Action: <select name="whichslide" onchange="schedule(this.value)"> 
<option value="ab">Add & Bump</option> 
<option value="1">1</option> 
<option value="2">2</option> 
<option value="3">3</option> 
<option value="4">4</option> 
<option value="5">5</option> 
<option value="6">6</option></select><br /> 
Year: <input type="text" name="year" size="3"> <br> URL: <input type="text" name="url" size="35"> <br> Description: <input type="text" name="description" id="fvdescription" size="75" value="Description goes here"> <br> 
<input type="submit" name="preview" value="Preview"> 

回答

0

這裏selectedslide是jQuery對象

$( '#myDiv')追加(selectedslide);

在這種情況下要附加對象的div元素

$("#fvdescription").val(selectedslide); 

但在這裏,你直接將值寫入一個文本字段,顯示在您的文本框對象。

嘗試答覆這個代替

$("#fvdescription").val(selectedslide.html()); 
+0

感謝您的回覆。注意用.html方法顯示;我嘗試使用警報(selectedslide.html())提醒框,但沒有顯示。 – Rob

+0

什麼是$幻燈片在這裏...你有沒有嘗試在控制檯中登錄 –

+0

$幻燈片是指file.xml上的六個span元素 – Rob

1

好了,你不能把一個元素作爲一個文本框的。它基本上只是把你的jQuery對象的toString值作爲值,如果它返回一個結果集,它總是「Object object」。

你想要在你的文本框中顯示什麼?如果你想從裏面span文本,做到這一點:

$("#fvdescription").val(selectedslide.html());

+0

感謝,但這種方式不工作對我也......沒有什麼是在輸入框中改變。我將我的HTML添加到原始文章。 – Rob