Grails TagLib获取元素值
Grails TagLib Get element Value
我有一个自己的TagLib和一个名为boxLink
的标签来生成远程链接并打开Modal:
Closure boxLink = { attrs, body ->
Integer modalId = OwnUtil.getRandomNumber(1000)
Map params = attrs.params ? attrs.params : [:]
params.put('modalId', modalId)
Map linkParams = params
out << '<a href="#" class="modalBoxLink ' + attrs.class
if (attrs.title)
out << ' tooltipSpan" title="' + attrs.title
out << '" onclick="'
out << remoteFunction(controller: attrs.controller, action: attrs.action, onLoading: attrs.onClick + ';loadingSpinner()', onComplete: 'removeSpinner()',
onSuccess: 'viewModalBox(data,' + modalId + ');initForm();', onFailure: 'errorAlert();', params: linkParams)
out << '">'
out << body()
out << '</a>'
}
在某些情况下,我需要读取Form Element的值以将其放入AJAX请求的数据中,因此我尝试了
if(attrs.elementid){
def elParam = attrs.elementid
if(attrs.elementname)
elParam = attrs.elementname
linkParams.put(elParam,"document.getElementById('${attrs.elementid}').value")
}
生成ajax请求的数据值
data:{'modalId': '357','application': 'document.getElementById('elementid').value'}
如何通过获取HTML元素的值来设置ajax请求的数据属性?
标记库在服务器上执行,您希望生成的代码作用于客户机。这只能通过javascript实现。您最好使用jQuery和ajaxForm。您可以将函数绑定到模态打开或其他操作,并设置表单中隐藏字段的值。
下面是我使用的一个例子,它从一个隐藏的div中填充html的模态,并向两个隐藏的字段添加数据。请注意,我没有使用ajaxForm在这里,但它是相同的想法。
<script type="text/javascript">
function configModal() {
$(".clickable-row").click(function() {
var row = $(this)
var modal = $('#notificationModal');
var title = row.find('td').find('a').html();
var html = row.find('.notification-content').html();
var notificationId = row.attr('id');
modal.find('.modal-body').html( html );
modal.find('.modal-title').html( title );
modal.find('#modal-form').find('input[name=id]').attr('value', notificationId)
modal.find('#modal-form').find('input[name=isDeleted]').attr('checked', row.hasClass('deleted'));
modal.modal();
$.post("${createLink(controller: 'notification', action: 'update')}",
{ id : notificationId, isRead : true },
function() { row.addClass('read'); });
});
}
$(document).ready(configModal);
</script>
相关文章:
- React - 从 DOM 元素获取组件以进行调试
- 如何使用 JQuery 从相对元素获取 html 文本
- 从同一域上的 iframe 中的元素获取值
- 使用本机 Javascript 从 DOM 元素获取选择器字符串
- 使用jquery从另一个元素获取使用id的输入的id
- 如何从角度元素获取编译的节点值
- 如何为不同的元素获取不同的父类
- 从 jQuery 中的子元素获取父 tr 元素
- 当浮点部分为空时,从 JQuery 中的输入元素获取数字值不起作用
- 从 XML 元素获取文本
- 从音频元素获取音频样本
- 从所选元素 html 上方的元素获取属性值
- 使用 jQuery.data 从 dom 元素获取布尔值
- 如何通过jquery从某个元素获取部分文本
- 从输入元素获取表单和表单数据对象
- 从动态元素获取挖空视图的大小
- 从中继器循环中显示的子自定义元素获取正确的上下文.奥蕾莉亚
- 如何使用 JavaScript 或 JQuery 从输入类型=文件 html 元素获取文件名
- 从父元素获取 ID 并将它们放在数组中
- 尝试从选项元素获取 HTML