如何根据按下的按钮填充输入文本字段数据

时间:2014-02-28 18:41:12

标签: javascript html forms

在我的项目中,每个产品都有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的帮助 我试过用              <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");
 }

 }

我试过这个逻辑,例如,我能够阅读按钮点击但我无法写入表格... 有人请帮帮我 提前谢谢

2 个答案:

答案 0 :(得分:3)

您使用的是不带引号的product_name,但'product_name'

应该是

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

而不是

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

答案 1 :(得分:0)

如Suman所述,您需要将'product_name'作为字符串提供给getElementById()。以下是您的方法的一个有效示例:http://jsfiddle.net/CTnFt/

但是,由于您可能会为许多产品提供许多这些标记,因此更简单的解决方案可能是将值放在标记的数据属性中并在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>
相关问题