Javascript 如何禁用Sharepoint文本框?

Javascript 如何禁用Sharepoint文本框?,javascript,sharepoint,wss-3.0,Javascript,Sharepoint,Wss 3.0,我试图在SharePoint WSS3中禁用一个文本框并强制使用一个特定的值(由另一个JavaScript函数给出),但我似乎找不到正确的方法。我遇到了不同的问题。假设我有一个名为prova的普通单行文本值和另一个名为Description的文本值。说明是必需的,prova不是 第一个问题:如果该字段是必填字段,即使文本框中有内容,SharePoint也会这样说,不允许我插入该条目 $(document).ready(function(){ //var value = someFunct

我试图在SharePoint WSS3中禁用一个文本框并强制使用一个特定的值(由另一个JavaScript函数给出),但我似乎找不到正确的方法。我遇到了不同的问题。假设我有一个名为prova的普通单行文本值和另一个名为Description的文本值。说明是必需的,prova不是

第一个问题:如果该字段是必填字段,即使文本框中有内容,SharePoint也会这样说,不允许我插入该条目

$(document).ready(function(){
    //var value = someFunction(...);
    var value = "test";
    $("input[title='Description']").attr("disabled", "disabled");
    $("input[title='Description']").val(value);
});

第二个问题:如果该字段不是必需的,SharePoint不会说什么,但会插入一个空白值,而不是给定的值

$(document).ready(function(){
    //var value = someFunction(...);
    var value = "test";
    $("input[title='prova']").attr("disabled", "disabled");
    $("input[title='prova']").val(value);
});

我有一种感觉告诉我,在某个地方有某种SharePoint JavaScript函数可以监听KeyUp之类的东西。我真的不知道现在该怎么办


EDIT:问题似乎与禁用文本框有关,如果我对禁用文本框的行进行注释,则在这两种情况下都有效。如果我捕捉到插入请求,也许可以在SharePoint发布实际帖子之前重新启用文本框。不知道该怎么做…

您的问题实际上与首先禁用文本框有关。默认情况下,禁用的文本框不包含在IE中的POST请求中

请看这篇文章:或者这篇:


实际上,您要做的是设置字段的
readonly
属性,而不是
禁用它(
readonly=“readonly”
)。问题是,只读状态有时看起来与默认状态相同,因此您还必须添加一些CSS以使其看起来变灰。

您的问题实际上与首先禁用文本框有关。默认情况下,禁用的文本框不包含在IE中的POST请求中

请看这篇文章:或者这篇:


实际上,您要做的是设置字段的
readonly
属性,而不是
禁用它(
readonly=“readonly”
)。问题是,只读状态有时看起来与默认状态相同,因此您还必须添加一些CSS使其看起来变灰。

问得好!我丢失了您将收到Sharepoint错误时的信息。单击“确定”时?总结一下:当字段是必需的(SharePoint必需),并且您通过JavaScript输入一些数据时,SharePoint认为字段中没有数据,并且不保存您的字段数据?你能再给我看一些代码吗
.val(value)
设置字段值看起来正确:单击“确定”后,SharePoint认为文本框为空。不过,问题似乎与禁用的属性有关,请看一下我所做的编辑。编辑:代码真的很简单,除了获取值的函数。好问题!我丢失了您将收到Sharepoint错误时的信息。单击“确定”时?总结一下:当字段是必需的(SharePoint必需),并且您通过JavaScript输入一些数据时,SharePoint认为字段中没有数据,并且不保存您的字段数据?你能再给我看一些代码吗
.val(value)
设置字段值看起来正确:单击“确定”后,SharePoint认为文本框为空。不过,问题似乎与禁用的属性有关,请看一下我所做的编辑。编辑:代码真的很简单,除了获取值的函数。干得好,你救了我一天!干得好,你救了我一天!