Showing posts with label SPServices.SPGetQueryString. Show all posts
Showing posts with label SPServices.SPGetQueryString. Show all posts

Pre populate SharePoint DropDown column in NewForm.aspx depending on query String using Content Editor Web Part and JavaScript


Pre populate SharePoint DropDown column in NewForm.aspx depending on query String  using Content Editor Web Part and JavaScript.


Step 1: Kindly follow my intital post to understand how java script can be used in Content Editor Web Part.

Step 2: Consider a list like "Announcement"  with custom "Drop Down" type column.



Step 3: Edit the page. You can modify the URL to edit NewForm.aspx. To the end of the URL append PageView=Shared&ToolPaneView=2. This will open the form in edit mode.

your URL must be like this http://sample.com/sites/BasicJs/Lists/Announcements/NewForm.aspx?PageView=Shared&ToolPaneView=2

Step 4: Add Content Editor Web Part.

Step 5: Write the following code in a text. save as html. upload into SharePoint.Link this html page to content editor web part or Write code in Web Part's text editor directly.



Step 6: Code. Here the query string value from the URL will determine with what value column "Announcement Category" must be populated with.If the URL is like http://sample.com/sites/BasicJs/Lists/Announcements/NewForm.aspx?AnnouncementCategory=Public

<html>
<head>

<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/jquery-1.4.2.min.js"></SCRIPT>
<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/JsFiles/jquery.SPServices-0.5.6.min.js"></SCRIPT> 
<SCRIPT type=text/javascript>


$(document).ready(function()
 {

var queryStringVals = $().SPServices.SPGetQueryString();
        var AnnCategory = queryStringVals["AnnouncementCategory"];
var AnnCategorytField = getTagFromIdentifierAndTitle("select","","Announcement Category");
//alert("Control is " + AnnCategorytField.name);  
setSelectedOption(AnnCategorytField,AnnCategory); 
  });

function setSelectedOption(select, value)
{
var opts = select.options;
var l = opts.length;
if (select == null) return;
for (var i=0; i < l; i++) 
{
if (opts[i].text == value) 
{     
     select.selectedIndex = i;
     return true;
    }
 }
return false;
}

function getTagFromIdentifierAndTitle(tagName, identifier, title) 
{
  var len = identifier.length;
  var tags = document.getElementsByTagName(tagName);
  for (var i=0; i < tags.length; i++) 
{
   var tempString = tags[i].id;
   if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len))
{    return tags[i];     }
  }
  return null;
}

</SCRIPT>
</head> 
<Body></Body>
</html>

Step 7: To remove the identity that the code was generated from Content Editor Web Part, within the Web Part Setting, Under Appearance, For Chrome Type select "None". Click OK. Click Apply. Publish the Page.

Step 8: Now you can see that the column "Announcement" is populated with the value from the query string "Public".


Leave your comments below.

Pre populate SharePoint Yes\No column in NewForm.aspx depending on query String using Content Editor Web Part and JavaScript.


Pre populate SharePoint Yes\No column in NewForm.aspx depending on query String  using Content Editor Web Part and JavaScript.


Step 1: Kindly follow my intital post to understand how java script can be used in Content Editor Web Part.

Step 2: Consider a list like "Announcement"  with custom "Yes\No" type column.



Step 3: Edit the page. You can modify the URL to edit NewForm.aspx. To the end of the URL append PageView=Shared&ToolPaneView=2. This will open the form in edit mode.

your URL must be like this http://sample.com/sites/BasicJs/Lists/Announcements/NewForm.aspx?PageView=Shared&ToolPaneView=2

Step 4: Add Content Editor Web Part.

Step 5: Write the following code in a text. save as html. upload into SharePoint.Link this html page to content editor web part or Write code in Web Part's text editor directly.



Step 6: Code. Here the query string value from the URL will determine if the column "Top Announcement" must be checked or not.If the URL is like http://sample.com/sites/BasicJs/Lists/Announcements/NewForm.aspx?IsTopAnnouncement=Yes


<html>
<head>

<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/jquery-1.4.2.min.js"></SCRIPT>
<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/JsFiles/jquery.SPServices-0.5.6.min.js"></SCRIPT> 
<SCRIPT type=text/javascript>


$(document).ready(function()
 {

var queryStringVals = $().SPServices.SPGetQueryString();
        var ISTopAnnouncement = queryStringVals["IsTopAnnouncement"];
if (ISTopAnnouncement == 'Yes')
{
//alert(ISTopAnnouncement);
var TopAnnouncementField = getTagFromIdentifierAndTitle("input","","Top Announcement");
//alert("Control is " + KQuestionField.name);  
EnableSelection(TopAnnouncementField);  
}
  });
function EnableSelection(TopAnnouncementField)
{
//alert("inside EnableSelection");
TopAnnouncementField.checked = "True";
}

function getTagFromIdentifierAndTitle(tagName, identifier, title) 
{
  var len = identifier.length;
  var tags = document.getElementsByTagName(tagName);
  for (var i=0; i < tags.length; i++) 
{
   var tempString = tags[i].id;
   if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len))
{    return tags[i];     }
  }
  return null;
}

</SCRIPT>
</head> 
<Body></Body>
</html>


Step 7: To remove the identity that the code was generated from Content Editor Web Part, within the Web Part Setting, Under Appearance, For Chrome Type select "None". Click OK. Click Apply. Publish the Page. Now you can see that the column "Top Announcement" is checked.


Leave your comments below.

Get QueryString from Current Url of the SharePoint Site using SpServices, Javascript and Content Editor Web Part

Get QueryString from Current Url of the SharePoint Site using SpServices, Javascript and Content Editor Web Part

Step 1: Kindly follow my intital post to understand how java script can be used in Content Editor Web Part.

Step 2: Consider the SharePointSite has a URL like 

http://sample.com/sites/basicJs/Pages/NewPage.aspx?Source=http://sample.com/sites/basicJs/Default.aspx&MyQueryString=KeyWords

Step 3:To obtain the values of the Querystring like "Source" and "MyQueryString" SPServices comes in very handy.

Within Content Editor Web Part insert this code


<html>
<head>
<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/jquery-1.4.2.min.js"></SCRIPT>
<SCRIPT type=text/javascript src="/mysites/myDocLibrary/JsFiles/JsFiles/jquery.SPServices-0.5.6.min.js"></SCRIPT> 
<SCRIPT type=text/javascript>

var queryStringVals = $().SPServices.SPGetQueryString();
var thisSource = queryStringVals["Source"];
var thisQStr = queryStringVals["MyQueryString"];

document.write("Source is " + thisSource );
document.write("MyQueryString is " + thisQStr);

</SCRIPT>
</head>

<Body>

</Body>
</html>

Step 4 : To remove the identity that the code was generated from Content Editor Web Part, within the Web Part Setting, Under Appearance, For Chrome Type select "None". Click OK. Click Apply. Publish the Page.

Step 5: To build dynamic URLs using the same approach, kindly follow my previous post.

Leave your comments below.