无法正确调用保存对象
Cannot call save object properly
我有一个不知道如何解决的问题。我有一个表单,我用它来显示数据,也编辑数据。
<!-- New Network button -->
<h:button style="position:absolute; bottom:25px; right:265px;" styleClass="buttonImage" value="New Network" outcome="/Network/NewNetwork.xhtml" rendered="#{not bean.editable}"/>
<!-- Edit button -->
<h:commandButton style="position:absolute; bottom:25px; right:150px;" styleClass="buttonImage" onclick="this.disabled = true;" value=" Edit Network " rendered="#{not bean.editable}" action="#{bean.editNetwork(true)}" >
<f:ajax render="@form" execute="@form"></f:ajax>
</h:commandButton>
<!-- Save Changes button -->
<h:commandButton style="position:absolute; bottom:25px; right:150px;" rendered="#{bean.editable}" styleClass="buttonImage" value=" Save Changes " onclick="editdialog(this, 'Do you want to save the changes?');
return false;" />
<!-- Hidden Edit button -->
<h:commandButton id="editdata" value="HiddenDelete" action="#{bean.saveData}" style="display:none">
<f:ajax render="@form" execute="@form"></f:ajax>
</h:commandButton>
<!-- Cancel button -->
<h:commandButton style="position:absolute; bottom:25px; right:65px;" styleClass="buttonImage" value=" Cancel " rendered="#{bean.editable}" action="#{bean.initDBData}" >
<f:ajax render="@form"></f:ajax>
</h:commandButton>
我使用这个JavaScript来确认数据的编辑:
// Question Dialog for edit panel
function editdialog(button, a) {
jQuery("<div />", {
text: a
}).dialog({
width: 600,
buttons: {
"Ok": function() {
jQuery(button).closest("form").find("[id$=editdata]").click();
//$("form'':deleterow").click();
jQuery(this).dialog("close");
button.value = "Processing...";
button.disabled = true;
},
"Cancel": function(event) {
jQuery(this).dialog("close");
event.preventDefault();
button.value = "Save Changes";
button.disabled = false;
}
}
});
}
但是在检查服务器长数据之后,Java方法saveData
永远不会被JavaScript调用。我错过了一些我找不到的东西。你能帮我找出我的错误吗?
EDIT:
问题在这里:
<!-- Hidden Edit button -->
<h:commandButton id="editdata" value="HiddenDelete" style="position:absolute; bottom:25px; right:650px;" action="#{bean.saveData}" rendered="#{bean.editable}">
<f:ajax render="@form" execute="@form"></f:ajax>
</h:commandButton>
当我点击按钮时,表单没有提交,Java方法savedata
没有被调用。
我认为jQuery选择器中缺少引号:
jQuery(button).closest("form").find("[id$='editdata']").click();
相关文章:
- 解析服务器云代码保存对象
- Parse.com在循环中保存对象,只保存最后一个对象
- 在 parse.com 中保存对象后计划后台作业
- 用两种方式保存对象,有什么区别
- 在ember.js中保存对象时出错:'对象X没有方法'保存''
- 如何在 javascript 中保存对象变量的状态
- C# 保存对象列表与保存对象(来自 JSON)
- 使用 HTML 5 保存对象
- Parse.com 云代码保存( )错误:“未捕获 尝试使用指向新的未保存对象的指针保存对象
- javascript 或 jQuery 是否有任何技术来创建最终用户可以即时收缩或扩展的保存对象
- Backbone.js-保存对象时未触发错误事件
- Parse.com Cloud Code beforeSave()错误:"未捕获尝试用指向新的未保存对象的指针
- 如何在AngularJS中保存对象的JSON索引位置,而不是对象本身
- 如何保存对象实例(和选项)以便将来应用方法
- 从对象中的函数中获取保存对象的变量的名称
- 在保存对象数组时解析空对象
- 无法正确调用保存对象
- 在angularjs中保存对象的响应
- 如何保存对象以供以后使用?通过JSON或其他方式发送并存储在DB中,然后恢复
- localStorage保存对象,但不能读取其内容