请原谅我的经验不足,因为我不是一个程序员,而是一个善于尝试做某事的人。我不确定正确的术语,复杂的解释会直截了当!
本质上,我试图将网页的URL的一部分传递给链接到购物车的简单表单。即如何将文件名放入我有xxxxxxx的表单中。可以在Javascript中使用吗?
<script type="text/javascript">
var url = window.location.pathname;
var filename = url.substring(url.lastIndexOf('/')+1);
document.write (filename);
</script>
<form action="http://www.mywebspace.com/cf/add.cfm" method="post">
<input type="hidden" name="userid" value="12345678">
<input type="hidden" name="product" value="xxxxxxx">
<input type="hidden" name="price" value="5.00">
<input type="Submit" value="Buy now!">
</form>
答案 0 :(得分:2)
我提供了一个代码段代码,可以使用您当前的HTML结构。虽然我建议你给产品字段一个id,以防止循环和搜索元素的必要性:
var url = window.location.pathname,
filename = url.substring(url.lastIndexOf('/')+1);
fields = document.getElementsByTagName('input');
for(var i = 0; i < fields.length; i++){
if(fields[i].name == 'product') {
fields[i].value = filename;
break;
}
}
答案 1 :(得分:1)
如果表单只在给定页面上存在一次,这是一个简单的解决方案:
将其更改为:
<input type="hidden" id="productField" name="product" value="xxxxxxx">
在你的javascript中,
document.getElementById('productField').value = filename;
答案 2 :(得分:0)
是的,这是可能的。
您需要更新表单,而不是执行document.write。假设您的文件名值当前是正确的:
//js
document.getElementById( "name-of-file").value = filename;
<!- html -->
... ...