在我的项目中,每个产品都有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");
}
}
我试过这个逻辑,例如,我能够阅读按钮点击但我无法写入表格... 有人请帮帮我 提前谢谢
答案 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>