0

I have a project where I need to create a form. In that form I have several columns. The columns that I have questions about are

  1. assignment category

  2. Assignment type

I have questions because the user wants these columns to have choices. No problem. But he would like if a certain choice is made in the category column, a field pops up asking what is the code for choice. It is only required for two out of the choices in the column.

In the assignment type column, there would be 3 choices. If someone selected 2 out of the 3, they would get an additional field. For example, the assignment type has writing, editing, and proofing choices. If a user selected writing, then they would need to select original writing or rewrite in a field that appeared. If they chose editing, they would need to select Level I or Level II.

First, is this possible? Next, should I use cascading lookup columns? If so, how do I setup the columns that would make the a new column appear once a choice is made?

I know I would have to edit the form and probably use infopath. Any help would be greatly appreciated?

Thank you

2 Answers 2

1

Personally, I would just use a SP form. Creating the cascading drop down wouldn't be too hard to do. I've used this many times and it is effective. Use SPServices.SPCascadingDropdowns for this. The code piece I generally use is this:

<script type="text/javascript"> 
$(document).ready(function(){ 
 $().SPServices.SPCascadeDropdowns({ 
  relationshipList: "Assignment Type", 
  relationshipListParentColumn: "Assignment Category", 
  relationshipListChildColumn: "Title", 
  parentColumn: "Assignment Category", 
  childColumn: "Assignment Type", 
  debug: true 
 })    
}) 
</script> 

Make sure you include a reference to the SPServices library as well

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/2014.01/jquery.SPServices.min.js"></script> 

As for having a field hidden unless a specific choice is selected is that completely necessary or can it just be blank? You could just set this up by having it blank fairly easily. If you wanted it to be hidden you would have to do some development.

Here's a couple of examples on how to use SPServices.SPCascadingDropdowns as well:

http://www.codeproject.com/Tips/758909/Two-Level-Cascading-Drop-Down-in-SharePoint-using http://www.uccorner.com/332/sharepoint/cascading-drop-down-multiple-levels/

Edit:

In your case, if you want to add the two fields for a cascading drop down:

  1. Create list named Assignment Category
    • This list only contains the Title field. Insert all of your choices for Assignment Category.
  2. Create list named Assignment Type
    • Add a field that is a lookup to Assignment Category. Insert all of your choices for Assignment Type in the title field and link them to the appropriate Category.
  3. Add lookup fields to your main list for Assignment Category and Assignment Type pointing at the title of their own respective lists.
  4. Go into SP Designer and find the main list. Find the NewForm form.
  5. After this line: <asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server"> enter the script from above.
    • I updated the script, you may have to alter the names a little bit but should be close.

Hopefully that works for you, if not let me know.

4
  • What would be the main form? Would the list that would be next to the relationshiplist the main form? In addition, there are other columns that would need to be added to the form. I would like to add those columns to the main form.
    – Keon
    Commented Nov 13, 2014 at 21:07
  • So you would use the same list you are using as your main form. You will have to create two new lists if you want to have a cascading relationship between 'Assignment Category' and 'Assignment Type'. The first of those lists being just Assignment Category with just the title field of each different category. The second list would be of Assignment Type. This list will have two fields, title and a lookup to the Assignment Category. Then you will add lookups to your main list as your fields and place the script in the NewForm.aspx file. Does that make sense?
    – Jordan
    Commented Nov 13, 2014 at 21:11
  • Edited answer to add steps for you to follow.
    – Jordan
    Commented Nov 13, 2014 at 21:22
  • I tried the steps above. I have another question. Where do I put the lookup column for the writing and editing lists? The list are related to the Assignment Category. If writing is selected in the assignment category, then they would get the choices from the writing list and same for the editing list. Or should I just put the choices from each list on the Assignment Category list and then set that as lookup column on the main list? By the way, the Assignment Category and Assignment Type switched data.
    – Keon
    Commented Dec 10, 2014 at 21:17
0

If you choose InfoPath as a somewhat more user-friendly way to customize the form (supported until 2020 but deprecated by Microsoft), consider reading the recipes on bizsupportonline, there are lots of them, your specific problem also solved a couple of ways.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.