Как передать html: текстовое значение с помощью html: link в Struts 1.2 - PullRequest
1 голос
/ 12 июля 2011

Моя страница JSP отображает список с использованием логической итерации.В каждой отображаемой строке есть ссылка для редактирования.при редактировании связанной ссылки имя будет изменено на текстовое поле, чтобы его можно было редактировать и отправлять вместе со ссылкой для фиксации.HTML: текстовое значение мне нужно отправить с HTML: ссылка.часть моего jsp ниже, где у меня есть

html: text property = "newId" value = "<% = modId%>" /> Я хочу передать это свойство как hashmap с html-ссылкойпосылка "/> как param1 Пожалуйста, помогите. Или предложите другой способ сделать это. Спасибо.

####################################################################################
<logic:equal name="mode" value ="1">
 <td><bean:write name="display" property="productId"/></td>
<logic:notEqual name="edit" value="1">          
<td><bean:write name="display" property="productName" /></td>       
</logic:notEqual>
<logic:equal name="edit" value ="1">
<logic:equal name="display" property="productName" value ="<%=modId%>">
<td><html:text  property="newId"  value="<%=modId%>"/></td>
</logic:equal>
 <logic:notEqual name="display" property="productName" value ="<%=modId%>">
<td><bean:write name="display" property="productName" /></td>   
</logic:notEqual>
</logic:equal>

<bean:define id="param1" name="display" property="productName"/>
<%
    String changedName=request.getParameter("changedName");
    System.out.println("  st: " + changedName);
    java.util.HashMap params = new java.util.HashMap();
    if(param1!=null)
        params.put("objectToEdit", param1);
        params.put("abc",param1);
        pageContext.setAttribute("paramsName", params);
%>
</logic:equal> 

#####################################################################################

Same JSP HTML:LINK PArt
 #######################################
<html:link action="Manager?edit=1" name="paramsName" onclick="return modify()">
 <logic:equal name="edit" value ="1">
   <logic:equal name="display" property="productName" value ="<%=modId%>">
    <img src="../images/commit.png" border="0" style="background-color:blue" title=" bean:message key="commit.data"/>" >
   </logic:equal>
</logic:equal>
</html:link>

1 Ответ

0 голосов
/ 26 июля 2011

Ну, я сделал это с помощью сценария Java.
надеюсь, что мое решение поможет кому-то

function modify(){
    var textBox = document.getElementById('editableTextBox');//text box name
    var newName = document.getElementById('editableTextBox').value;
    if(textBox!=null){
        var table = document.getElementsByTagName("table");
        var rows = table[3].rows;
        var rowCount=0;
        for(i=1;i<rows.length;i++){
            rowCount = i;
            var cells = rows[i].cells;

                     if(cells[1].hasChildNodes()){
           var nodeName = cells[1].childNodes[0].nodeName;
          if(nodeName=="INPUT"){
            break;
           }
        }
    }
    var reqCell =rows[rowCount].cells[cells.length-2];
    var oldLink = reqCell.childNodes[1].getAttribute("href"); //getOld link
    reqCell.childNodes[1].setAttribute("href",oldLink+"&newName="+newName)  //set href with appending text box value
}
}
...