Я использую из коробки Sharepoint 2013 для создания собственного списка.На NewForm.aspx я создал код в веб-части редактора контента, который должен отображать или скрывать столбцы на основе другого значения столбца (Invocation / Near Miss?).Это отлично работает.Я продублировал эту функцию для создания чего-то похожего на основании значения другого столбца (который называется «Какой GCC / MIG / IMT?»), Но этот не работает.
Обратите внимание, что «Какой GCC / MIG / IMT?»column - это поиск из другого списка sharepoint, который у меня есть.он содержит ок.90 записей.Эти записи имеют там текст, подобный приведенному ниже (небольшая выдержка для целей контекста):
Европа-Чехия-MIG
Европа-ЕС-MIG
Европа-ЕС-IMT-GBM
Европа-Франция-MIG
Европа-Франция-IMT-GBM
По сути, я хочу настроить свой оригинальный код (который работает)так что он смотрит на значение в «Какой GCC / MIG / IMT?»столбец, и если выбранное значение содержит буквы « IMT » (то есть включают несколько символов подстановки), то отобразите столбец с именем «IMT PIR».Тем не менее, он только «скрывает» столбец и не «показывает» столбец, когда я наконец выбираю значение, в котором есть символы «IMT».
К сожалению, кроме поиска на различных форумах, чтобы понять, как подстановочные знаки работают в Java, я не слишком уверен, куда идти.Я не знаю, например, могу ли я иметь несколько функций в одном скрипте.возможно ли это?
Так что следующая функция работает нормально:
<script src="http://code.jquery.com/jquery-1.7.2.min.js" type="text/javascript""></script><script type="text/javascript">
$(document).ready(function(){
// hide various columns when selecting "Near Miss" value
$("select[title='Invocation / Near Miss?']").change(function() {
if ($("select[title='Invocation / Near Miss?']").val() == "Near Miss") {
$('nobr:contains("Date of first IM meeting")').closest('tr').hide();
$('nobr:contains("Date of last IM meeting")').closest('tr').hide();
$('nobr:contains("Number of meetings?")').closest('tr').hide();
$('nobr:contains("PIR Author")').closest('tr').hide();
$('nobr:contains("PIR Approval Date")').closest('tr').hide();
$('nobr:contains("PIR Submitted to Corporate Security Site?")').closest('tr').hide();
$('nobr:contains("HELIOS Event ID")').closest('tr').hide();
$('nobr:contains("Incident status")').closest('tr').hide();
$('nobr:contains("PIR attached?")').closest('tr').hide();
$('nobr:contains("Incident date (near miss)")').closest('tr').show();
}
// Show certain columns when selecting "Invocation"
else if($("select[title=' Invocation / Near Miss?']").val() !== "Invocation"){
$('nobr:contains("Date of first IM meeting")').closest('tr').show();
$('nobr:contains("Date of last IM meeting")').closest('tr').show();
$('nobr:contains("PIR Author")').closest('tr').show();
$('nobr:contains("PIR Approval Date")').closest('tr').show();
$('nobr:contains("PIR Submitted to Corporate Security Site?")').closest('tr').show();
$('nobr:contains("HELIOS Event ID ")').closest('tr').show();
$('nobr:contains("Number of meetings?")').closest('tr').show();
$('nobr:contains("HELIOS Event ID")').closest('tr').show();
$('nobr:contains("Incident status")').closest('tr').show();
$('nobr:contains("PIR attached?")').closest('tr').show();
$('nobr:contains("Incident date (near miss)")').closest('tr').hide();
}
});
});
Эта следующая функция (которая закодирована в том же CEWP) просто скрывает столбец IMT PIR, но независимо от того, какое значение Iвыберите и не будет отображаться снова, если я выберу значение, которое имеет «IMT» в этом значении.
$(document).ready(function(){
// Show IMT PIR column when selecting a value which has "IMT" in it"
$("select[title='Which GCC / MIG / IMT?']").change(function() {
if ($("select[title='Which GCC / MIG / IMT?']").val() == "*IMT*") {
$('nobr:contains("IMT PIR")').closest('tr').show();
}
// Hide IMT PIR column when NOT selecting a value which has "IMT" in it"
else if($("select[title='Which GCC / MIG / IMT?']").val() !== "*IMT*"){
$('nobr:contains("IMT PIR")').closest('tr').hide();
}
});
});
</script>
По сути, я ожидал бы увидеть столбец IMT PIR там, где я выделил желтым цветом, когда значение в поле «Какой GCC / MIG / IMT?»столбец имеет значение, содержащее «IMT» внутри него;
Обратите внимание, я не разработчик, но буду очень признателен за советы от вас, удивительные люди :)
Спасибо, Шон