我有一个按钮,可以在按钮点击事件中在网格视图中添加新行。一行包含两个文本框和两个下拉列表。但在添加新行之前,我想检查第一行中的所有控件是否都已填充。所以我想在按钮点击事件上调用java脚本。那么如何在已经在网格视图中处理事件新行的按钮上调用java脚本?
答案 0 :(得分:3)
您可以定义一个javascript函数,它将检查是否所有控件都已填充,然后是否完成了添加新行的要求。
例如:
function example()
{
if(controls filled)
add a new row;
}
然后
<button type="button" onclick="example()">Click Me!</button>
答案 1 :(得分:0)
解决方案是将呼叫链接起来。有两种方法可以做到这一点:
您可以在函数定义中使用按钮的onclick
属性:
function chainOnClick(button, func) {
var origFunc = button.onclick;
var tmp = function(e) {
if(func(e)) {
return origFunc(e);
}
return false;
}
button.onclick = tmp;
}
请注意,如果没有安装onclick
,我发现它不可靠;由于某种原因,该模式不适用于浏览器的默认“onclick”处理程序。
您可以将处理点击的代码移动到一个函数(您可能已经拥有)中。现在编写验证函数并安装这个新的单击处理程序:
function validatedOnClick(e) {
if(validateLastRow(e)) {
return originalClickHandler(e);
}
return false;
}