2014-02-28 63 views
0

在我的項目中,我爲每個產品提供了10個產品,我有按鈕叫做info,如果我點擊一個信息按鈕,我想填充第一個字段的窗體彈出窗口(產品名稱)自動....讓說產品肥皂,我有信息按鈕如何根據按下的按鈕填充輸入文本字段數據

    `<a href="" id="1" class="btn">info</a>` 

在形式

   `<form> 
      <input type="text" id="product_name"> 
      <input type="text" id="number"> 
    </form>` 

我想現場PRODUCT_NAME自動根據按鈕被按下填補如此 如何得到這個..plz幫助 我tr滅蠅燈使用 <a href="" id="1" onClick="reply_click(this.id)">info</a> 和我的js

function reply_click(clicked_id) 
{ 
//alert(clicked_id); 
if(clicked_id == "1") 
{ 
    document.getElementById(product_name).value='Soap'; 
} 
else 
{ 
alert("button not pressed"); 
} 

} 

我想這個邏輯,例如,我能夠讀取點擊按鈕,但IAM無法寫入形成... 有人請幫我 感謝您推進

回答

0

如前所述的網速慢,您需要提供 'PRODUCT_NAME' 作爲一個字符串的getElementById()。以下是您的方法的一個工作示例:http://jsfiddle.net/CTnFt/

但是,由於許多產品可能都有許多這些標籤,因此更簡單的解決方案可能是將值放入標籤的data-attribute中,並將其讀入您的javascript函數,而不是更大,更難以維護if/elses的集合。這裏是一個工作示例:http://jsfiddle.net/Rc9MG/

<a href="#" id="1" class="btn" onclick="reply_click(this)" data-product-name="Soap">info</a> 

<form> 

    <input type="text" id="product_name" /> 

</form> 

<script type="text/javascript"> 

    function reply_click(element) 
    { 
     document.getElementById('product_name').value = element.getAttribute('data-product-name'); 
    }  

</script> 
3

您正在使用的ID不帶引號product_name'product_name'

應該

document.getElementById('product_name').value='Soap'; 

代替

document.getElementById(product_name).value='Soap'; 
+0

只是爲了說明OP使用它的方式product_name是一個變量。如果你打算它是一個字符串,那麼它需要用引號包裝。答案已經更新,以澄清:P –

+0

@CarlMarkham這是主要問題,他使用沒有引號的ID其他明智的OP的代碼是好的。 –

+0

我知道,我只是覺得我會補充說,對於OP的incase它不僅僅是一個簡單的錯字,他們不明白。 –

相關問題