我试图在jquery函数的加载中将action属性添加到我的表单元素。但是,我似乎错过了一些东西。我已经尝试过搜索这个问题,但我没有找到任何关于我的问题的运气。以下是有问题的HTML:
<form method="post" enctype="multipart/form-data" id="#photouploader">
Upload Client Photo Here
<input type="file" name="thumbnail">
<input type="submit" value="Upload Image">
</form>
这是我写的Jquery函数:
$(document).ready(function(){
var id = document.location.href.split('client/')[1];
$('#photouploader').attr('action', '/form-upload/'+id);
});
我只想了解我在哪里出错了。
答案 0 :(得分:2)
您的HTML表单ID中有#
- 删除它,您的jQuery应该可以正常工作。应该是这样的:
<form method="post" enctype="multipart/form-data" id="photouploader">
jquery中的#
不是ID的一部分,它只是表明以下文本引用了一个元素ID,类似于.
表示类的方式。
编辑:归功于eatpeanutbutter,他在评论中得到了正确答案。我正在打电话给我打字。
答案 1 :(得分:2)
您的选择器$('#photouploader').attr('action', '/form-upload/'+id);
正在寻找名为photouploader
的ID。您没有ID为photouploader
的HTML元素。相反,您有一个ID为#photouploader
的元素。
只需从HTML中的ID属性中删除#
,您就应该好了 -
<form method="post" enctype="multipart/form-data" id="photouploader">
答案 2 :(得分:0)
从ID中删除#(id =&#34; photouploader&#34;&gt;)并试试这个:
$(document).ready(function(){
var id = document.location.href.split('client/')[1];
$('#photouploader').attr('action', '/form-upload/'+id);
});