2011-12-07 16 views
0

これは本当に明白な場合は申し訳ありませんが、私はそれを説明するものは何も見つかりませんでした。SharePoint:FormFieldを使用しています。私は、HTMLで以下のことを行う方法について無数のリソースを見つけましたが、SharePoint jQueryにそれを適用しようとしたときに壊れました! SharePointの内容を取得する:FormFields

は、だから私は、SharePointがありますようにFORMFIELD以下

     <tr> 
         <td width="190px" valign="top" class="ms-formlabel"> 
          <H3 class="ms-standardheader"> 
           <nobr>Request Type<span class="ms-formvalidation"> *</span> 
           </nobr> 
          </H3> 
         </td> 
         <td width="400px" valign="top" class="ms-formbody"> 
          <SharePoint:FormField runat="server" id="ff3{$Pos}" ControlMode="New" FieldName="requestType" __designer:bind="{ddwrt:DataBind('i',concat('ff3',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@requestType')}"/> 
          <SharePoint:FieldDescription runat="server" id="ff3description{$Pos}" FieldName="requestType" ControlMode="New"/> 
         </td> 
        </tr> 

そして私はちょうど、ANYTHINGは、警告に表示されるために何かの値を取得しようとしているが、それは私に未定義の警告

を与えています
<script type="text/javascript"> 
$(document).ready(function(){ 
    var myVar = $("SharePoint:FormField[FieldName]").val() 
    alert(myVar); 
    // result "undefined" 
}); 
</script> 

助けてください。どうもありがとう!

答えて

1

あなたの問題は、JavaScriptがクライアント側で実行されていることです。あなたのウェブブラウザ(ソースを見る)であなたのページのソースを見れば、どこにでもSharePoint:FormFieldが見つからないことがわかります。これは、SharePoint:FormFieldがHTMLタグではないからです。このフィールドは実際のhtmlタグの数に置き換えられます。 SharePoint:FormFieldが処理され、サーバー側で置き換えられます。

生成されたタグを確認し、それらのタグにアクセスする必要があります。

+0

AH-ha !!優れたポイントジェームス...今私はとても気が気になりませんが、SharePointのjQueryを使用して見つけたすべてのリソースが、HTMLコードでSPコードではないことがわかりました。 – jg100309