Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 345
  • Last Modified:

Add apostrophe to hidden form field

I'm passing values using a hidden field from form page to form page. What I need to do is add apostrophes to the hidden field. I have this working from the select box when the values are added but some IE browsers aren't carrying the values even though they are the same version. So I need to add these on the last form.

Here is the hidden field that is carrying the values and that I want to add the ticks to:

<input type="hidden" name="sBus" value="<% Response.Write Request.Form("sBus")%>">
<input type="hidden" name="sInd" value="<% Response.Write Request.Form("sInd")%>">

Here is the javascript I wrote to add them but doesn't seem quite right:

function AddIt()
{
   var busObj;
   var indObj;
   //Get value
   busObj = <% Response.Write Request.Form("sBus")%>;
   indObj = <% Response.Write Request.Form("sInd")%>;
   {
     if (busObj == true) {
       document.listform.sBus.value = document.listform.sBus.value + "'" + busObj.value + "',";
          }
     if (indObj == true) {
       document.listform.sInd.value = document.listform.sInd.value + "'" + indObj.value + "',";
          }
    }
}
0
whargra
Asked:
whargra
  • 3
  • 2
  • 2
  • +3
1 Solution
 
jaysolomonCommented:
function AddIt()
{
   var busObj;
   var indObj;
   //Get value
      busObj = <% Response.Write Request.Form("sBus")%>;
    indObj = <% Response.Write Request.Form("sInd")%>;   {
     if (busObj) {
       document.listform.sBus.value = document.listform.sBus.value + "'" + busObj + "',";
         }
     if (indObj) {
       document.listform.sInd.value = document.listform.sInd.value + "'" + indObj + "',";
         }
    }
}
0
 
jaysolomonCommented:
here is an example for javascript no server side

<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
<!--
function AddIt()
{
   var busObj;
   var indObj;
   //Get value
   busObj = "";
   indObj = "john doe";
   {
     if (busObj) {
       document.listform.sBus.value = document.listform.sBus.value + "'" + busObj + "',";
         }
     if (indObj) {
       document.listform.sInd.value = document.listform.sInd.value + "'" + indObj + "',";
         }
    }
} // -->
</script>
</head>
<body>
<form name="listform" method="post" action="">
<input type="text" name="sBus">
<input type="text" name="sInd">
<input type="button" name="btn" value="test" onclick="AddIt();">
</form>
</body>
</html>


0
 
GwynforWebCommented:
This surely

<input type="hidden" name="sBus" value="'<% Response.Write Request.Form("sBus")%>'">
<input type="hidden" name="sInd" value="'<% Response.Write Request.Form("sInd")%>'">
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
whargraAuthor Commented:
Jay,
With yours I'm getting an Undefined error with the first value result. So I'm going to look at this closer.

Gwyn,
Yours adds the ticks between all the values, not each one. ie, 'a, b, c, d' instead of 'a', 'b', 'c', 'd'
0
 
devicCommented:
whargra, i can not get, what are you trying to do.

but anyway, if you work with hidden fields( + with method post :)), then during test change type from HIDDEN to TEXT
to see what are you doing.

<input style=width:100% type="text" name="sBus" value="<%= Request.Form("sBus")%>"><br>
<input style=width:100% type="text" name="sInd" value="<%= Request.Form("sInd")%>"><br>
0
 
NetGrooveCommented:
Check this:

<form name="listform">
<input type="text" name="sBus" value="'a, b, c, d'">
<input type="text" name="sInd" value="i, j, k, l">
</form>

<script>
function AddIt()
{
   var busObj;
   var indObj;
   //Get objects:
   busObj = document.listform.sBus;
   indObj = document.listform.sInd;
   busObj.value = busObj.value.replace(/\'?(\w+)\'?/g,"'$1'");
   indObj.value = indObj.value.replace(/\'?(\w+)\'?/g,"'$1'");
}
AddIt()
</script>


0
 
NetGrooveCommented:
Or like this:


<html>
<head>
<script>
function AddIt(){
  var busObj = document.listform.sBus;
  var indObj = document.listform.sInd;
  busObj.value = qw(busObj.value);
  indObj.value = qw(indObj.value);
}

function qw(wordList){
  return wordList.replace(/\'?(\w+)\'?/g,"'$1'");
}
</script>
</head>
<body onLoad="AddIt()">
<form name="listform">
<input type="text" name="sBus" value="'a, b, c, d'">
<input type="text" name="sInd" value="i, j, k, l">
</form>
</body>
</html>



0
 
GwynforWebCommented:
I am not sure exactly what you are trying to do but sever side I believe this is what you want ie a, b, c, d gets changed to 'a', 'b', 'c', 'd'

<%reg= /(\w+)/g
Bus=Request.Form("sBus")
Bus=Bus.replace(reg,"'$1'")
Ind=Request.Form("sInd")
Ind=Ind.replace(reg,"'$1'")%>
<input type="hidden" name="sBus" value="<%Response.Write  Bus%>">
<input type="hidden" name="sInd" value="<% Response.Write Ind%>">

or more compactly (I think)

<input type="hidden" name="sBus" value=" <%= Request.Form("sBus").replace( /(\w+)/g ,"'$1'")%>">

0
 
NetGrooveCommented:
LOL :-)
0
 
xiong8086Commented:
Can you try this way below? substitute "'" with chr(39) in ASP code, it will work.

<input type="hidden" name="sBus" value=<%= chr(39)& Request.Form("sBus")&chr(39) %>>
<input type="hidden" name="sInd" value=<%= chr(39)&Request.Form("sInd")&chr(39)%>>
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 3
  • 2
  • 2
  • +3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now