0

我在使用 javascript 获取表单元素值,然后使用这些值调用使用“onClick”属性的函数时遇到了一些问题。

<form name="form1">
<select name="option1">
<option value="1">Option 1</option>
</select>
<input type="image" name="itemid" value="<?=$itemid?>" src="add.png" onclick="window.parent.newAddItem(this.value,form1.elements["option1"].value)" />
</form>

我发誓这应该有用吗?谁能告诉我这是我应该做的事情,或者是否有不同的“最佳实践”方法。

提前致谢!

4

2 回答 2

1

您的问题可能是因为您试图访问“select”元素的“value”属性而不是 selected 选项。试试这个:

// On your onclick event handler:
var option1 = form1.elements["option1"];
var selectedOption = option1.options[option1.selectedIndex];
window.parent.newAddItem(this.value, selectedOption.value);
于 2012-04-03T21:25:29.290 回答
0

根据您发布的内容,oForm 未定义。

避免像您那样使用内联事件处理程序。相反,集中绑定事件处理程序。这使 JS 远离您的 HTML。

本国的:

var onclick = function() { alert('you clicked me!'); };
var element = document.getElementById('some_element');
document.addEventListener ? element.addEventListener('click', onclick, false) : element.attachEvent('onclick', onclick);

jQuery

$('#some_element').click(function() { alert('you clicked me!'); });
于 2012-04-03T21:19:42.950 回答