1

我是 struts 2 的新手。我有一个 jsp 页面,它会将列 ID 发送到另一个 jsp 页面,该页面会将其发送到操作类,在那里我将获取用户输入的评论并将其返回到我的第二个 jsp 页面以显示它作为用户的弹出窗口。问题是我的 javascript 不接受该列的值。

//THIS IS WHERE THE PROBLEM IS IN THE JAVA SCRIPT
    <display:column title="Commentaire" sortable="true" sortProperty="Commentaire" class="alerte_td_commentaire">                                                       
    <s:if test="#attr.row.Commentaire != null && #attr.row.Commentaire != ''">                          
    <a href='#' onclick='javascript:var xx = (%{#attr.row.id}).val(); CommenatireToGet(xx);'><img src='/img/icons/ico_comment.png'></a>                                     
    </s:if>                                 
    </display:column>

//THIS IS MY SECOND JSP PAGE
function CommenatireToGet(value){
    $('#divShowCommAcqui').dialog('option', 'position', 'center');
    $('#divShowCommAcqui').dialog('open');

    var path = buildURL("/valorisation/ajax/CommenatireToGet.do");
    $.getJSON(
        path,
        {idAlerte:value},
        function(json){
            $('#commentaireAqui').val=getElementbyId(json.hello);
        }   
    )
};
//THIS IS MY ACTION CLASS
public String getComment() throws ServiceException{
        jsonData = new LinkedHashMap<String, Object>();
        idAlerte= (Integer) getActionSession("idAlerte");
        Alerte alerte =svc.retrieve(idAlerte);
        if (alerte !=null){
            jsonData.put("hello",alerte.getCommentaire());
        }

        return SUCCESS;
    }

//THIS IS MY STRUS TAG
<action name="CommenatireToGet" class="ihm.valorisation.AlerteAction" method="getComment">
            <result name="success" type="json">
                <param name="root">jsonData</param>
            </result>                       
        </action>
4

1 回答 1

1

您不能在 JSP 中的任何地方使用 OGNL 表达式,只能在 Stuts2 标记的属性中使用,甚至不能在所有属性中使用。所以,改变

<a href='#' onclick='javascript:var xx = (%{#attr.row.id}).val(); CommenatireToGet(xx);'><img src='/img/icons/ico_comment.png'></a>

<a href='#' onclick='CommenatireToGet(<s:property value="%{#attr.row.id}"/>);'><img src='/img/icons/ico_comment.png'></a>
于 2013-08-01T09:07:08.633 回答