所以,基本上我试图将一个变量传递给一段javascript代码,然后将该值设置为隐藏的输入值。
<img alt="" src="Image.jpg" style="width:50px" class="thisclass" title="Title" onclick="thisfunction('Text Here')" />
该值明显通过,因为我能够成功处理切换命令。
function thisfunction(thisvariable) {
switch(thisvariable) {
case 'Text Here' :
但是,当我尝试设置隐藏
的值时<input type="hidden" name="ThisInput" value="N/A" />
document.getElementById("ThisInput").value = thisvariable;
我在javascript控制台中收到以下错误
Uncaught TypeError: Cannot set property 'value' of null
我也试过
$('#ThisInput').val(thisvariable);
然而,这似乎使该值空白。
答案 0 :(得分:3)
查看代码的这一部分:
<input type="hidden" name="ThisInput" value="N/A" />
document.getElementById("ThisInput").value = thisvariable;
document.getElementByID
和$("#...")
会找到元素的ID。 &#34; ThisInput&#34;是名称 - 它没有设置ID。
这样可行:
<input type="hidden" id="ThisInput" value="N/A" />
document.getElementById("ThisInput").value = thisvariable;
或者如果您想将其保留为name
属性,请使用jQuery属性选择器:
$("input[name='ThisInput']").val(thisvariable);
答案 1 :(得分:0)
您尝试通过ID选择HTML元素。
<input type="hidden" id="ThisInput" name="ThisInput" value="N/A" />
使用它,它应该工作
答案 2 :(得分:0)
试试这个:
<input type="hidden" name="ThisInput" id="ThisInput" value="N/A" />
<script>
$('#ThisInput').attr('value',thisvariable);
</script>