value 参数没有使用 jquery 传递?

发布于 2024-09-24 00:33:46 字数 1239 浏览 0 评论 0原文

<textarea name="inputField" id="inputField" tabindex="1" rows="2" cols="40"onblur="DoBlur(this);" onfocus="DoFocus(this);" ></textarea>
<input class="submitButton inact" name="submit" type="submit" value="update" disabled="disabled" />
<input name="status_id" type="hidden">

javascript(jquery):

function insertParamIntoField(anchor, param, field) {
       var query = anchor.search.substring(1, anchor.search.length).split('&');

       for(var i = 0, kv; i < query.length; i++) {
          kv = query[i].split('=', 2);
          if (kv[0] == param) {
             field.value = kv[1];
             return;
          }
       }
    }


$(function () {
    $("a.reply").click(function (e) {
       console.log("clicked");
       insertParamIntoField(this,"status_id",$("#status_id"));
       insertParamIntoField(this, "replyto", $("#inputField")[0]);


     $("#inputField").focus()

$("#inputField").val($("#inputField").val() + ' ');


     e.preventDefault();
       return false; // prevent default action
    });
});

未传递 status_id 参数:

post.php?reply_to=@muna&status_id=345667

它总是给出零值,而其本意是给出 345667

<textarea name="inputField" id="inputField" tabindex="1" rows="2" cols="40"onblur="DoBlur(this);" onfocus="DoFocus(this);" ></textarea>
<input class="submitButton inact" name="submit" type="submit" value="update" disabled="disabled" />
<input name="status_id" type="hidden">

the javascript(jquery):

function insertParamIntoField(anchor, param, field) {
       var query = anchor.search.substring(1, anchor.search.length).split('&');

       for(var i = 0, kv; i < query.length; i++) {
          kv = query[i].split('=', 2);
          if (kv[0] == param) {
             field.value = kv[1];
             return;
          }
       }
    }


$(function () {
    $("a.reply").click(function (e) {
       console.log("clicked");
       insertParamIntoField(this,"status_id",$("#status_id"));
       insertParamIntoField(this, "replyto", $("#inputField")[0]);


     $("#inputField").focus()

$("#inputField").val($("#inputField").val() + ' ');


     e.preventDefault();
       return false; // prevent default action
    });
});

the status_id parameter is not being passed:

post.php?reply_to=@muna&status_id=345667

it always give a value of zero, when its meant to give 345667

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

情魔剑神 2024-10-01 00:33:46

你有两个问题,第一个问题是 @Guffa 提到的,你需要一个 ID 来让 $("#status_id") 工作,就像这样:

<input id="status_id" name="status_id" type="hidden">

另一个在这里:

insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this, "replyto", $("#inputField")[0]);

注意你没有 [0] 那里,所以你在 jQuery 对象上设置 .value ,而不是元素本身。相反,您需要这个:

insertParamIntoField(this,"status_id",$("#status_id")[0]);
insertParamIntoField(this, "replyto", $("#inputField")[0]);

或者更改您的方法以使用 .val(),就像这样:

field.val(kv[1]);

并去掉 [0] 调用,这样它们就只是

insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this, "replyto", $("#inputField"));

You have two problems, the first @Guffa mentioned, you need an ID for $("#status_id") to work, like this:

<input id="status_id" name="status_id" type="hidden">

The other is here:

insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this, "replyto", $("#inputField")[0]);

Notice you don't have a [0] there, so you're setting .value on the jQuery object, not the element itself. Instead you need this:

insertParamIntoField(this,"status_id",$("#status_id")[0]);
insertParamIntoField(this, "replyto", $("#inputField")[0]);

Or change your method to use .val(), like this:

field.val(kv[1]);

And strip off the [0] calls so they're just

insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this, "replyto", $("#inputField"));
此岸叶落 2024-10-01 00:33:46

该字段上没有任何 id,因此当您尝试使用 $('#status_id') 设置值时,它不会将该值放在任何位置。

将 id 添加到字段中:

<input name="status_id" id="status_id" type="hidden">

You don't have any id on the field, so when you try to set the value using $('#status_id') it won't put the value anywhere.

Add the id to the field:

<input name="status_id" id="status_id" type="hidden">
找个人就嫁了吧 2024-10-01 00:33:46

为输入添加值

<input name="status_id" id="status_id" value="345667" type="hidden">

add value to input

<input name="status_id" id="status_id" value="345667" type="hidden">
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文