我需要检查是否点击了jsp页面中的按钮。
我有1个jsp页面和2个javascript页面。第一个JSP页面是一个索引,它从用户获取输入并发送到javascript1,javascript1然后查询它并在索引页面中输出,每个输出都嵌入了按钮。 我想要的是,如果用户点击一个特定按钮,javascript2将检测点击并将该特定按钮的值作为下一个搜索查询,并再次在索引页面显示结果。
这是我的代码:
的index.jsp
<div>Please enter search keyword</div>
<input type="text" name="valueLiteral" class="input-box"/><br>
<input type="submit" name="indexsearch" value="Search" class="input-button">
javascript1将检测是否单击输入名称“indexsearch”并使用值名称“valueLiteral”来查询结果。 这部分工作正常。
以下是Javascript1.js中的代码:
$(document).ready(function() {
$("#result").hide();
$("input[name='indexsearch']").click(function() {
and so on.......
var stmt = [];
$.each(arrayPredicate, function(k,v){
stmt[k] = "<span class='subject' id="+arraySubject[k]+">" + arraySubject[k] + "</span> " + " -> " + v + " : "+ "<span class='object'>" + arrayObject[k] + "</span>" + "**<input type = 'submit' class = 'searchAgain-button' name = 'searchMore' value = " + arrayObject[k] + "></input>**<br><br>";
});
stmt = stmt.sort();
$.each(stmt, function(k,v){
$("#result").append(v);
});
} else {
var $noresult = "No Result : Please enter a query";
$("#result").append($noresult);
}
});
如您所见,我创建了按钮并将其附加到每个搜索结果的末尾。此部分仍然有效(按钮出现并显示下一个查询的名称)。
以下是代码的最后一部分:Javascript2.js:
$(document).ready(function() {
$("input[name='searchMore']").click(function() {
$("#result").show();
$("#result").empty();
loading_img();
var $textInput = $(this).attr("Value");
var stmt = [];
//concat all related array into string (create triple statement)
$.each(arrayPredicate, function(k,v){
stmt[k] = "<span class='subject' id="+arraySubject[k]+">" + arraySubject[k] + "</span> " + " -> " + v + " : "+ "<span class='object'>" + arrayObject[k] + "</span><input type = 'submit' class = 'searchAgain-button' name = 'searchMore' value = " + arrayObject[k] + "></input><br><br>";
});
stmt = stmt.sort();
$.each(stmt, function(k,v){
$("#result").append(v);
});
} else {
var $noresult = "No Result : Please enter a query";
$("#result").append($noresult);
}
});
});
以上代码不起作用,经过一些测试我觉得这个JavaScript页面无法检测到按钮名称“searchMore”。最终使代码的其他部分无效。
有什么建议吗?
答案 0 :(得分:0)
你试试吗
$("input[name='searchMore']").live("click", function() { ...
描述:为所有与当前选择器匹配的元素附加事件处理程序,现在和将来。